鸿蒙系统基于纹理压缩的VR展示方法、电子设备及介质技术方案

技术编号:35660086 阅读:23 留言:0更新日期:2022-11-19 16:57
本申请公开了一种鸿蒙系统基于纹理压缩的VR展示方法、电子设备及介质,所述鸿蒙系统基于纹理压缩的VR展示方法包括:获取播放指令,在磁盘中读取所述播放指令对应的压缩纹理数据,并通过GPU对所述压缩纹理数据进行浮点运算、渲染以及栅格化,生成图像数据,其中,所述压缩纹理数据是对目标展示物的图片集合中各图片进行纹理压缩得到;依据所述播放指令播放所述图像数据,以进行所述目标展示物的VR展示。本申请解决了在鸿蒙系统中进行VR展示时出现播放卡顿的技术问题。现播放卡顿的技术问题。现播放卡顿的技术问题。

【技术实现步骤摘要】
鸿蒙系统基于纹理压缩的VR展示方法、电子设备及介质


[0001]本申请涉及VR(Virtual Reality,虚拟现实技术)展示领域,尤其涉及一种鸿蒙系统基于纹理压缩的VR展示方法、电子设备及介质。

技术介绍

[0002]随着VR技术的发展,关于VR的展示技术也越来越成熟,例如对楼盘的展示,先通过对待展示房屋进行3D建模,获得待展示的房屋的全方位各角度的序列图片,通过序列帧方式进行播放。而目前的序列帧播放方案受限于CPU(Central Processing Unit,中央处理器)计算能力与运行内存的限制,无法兼顾硬件成本和性能。序列帧播放为了更高的写实性,每一张图片的质量都很高,目前在鸿蒙系统中进行目标展示物VR展示时,首先需要读取高质量图片,然后在内存中通过CPU解码为Bitmap(栅格图),最后设置到ImageView(图像视图)上,其耗时远超过16ms(1秒钟60帧,单帧图片的播放时间大致为16ms),在播放过程中容易产生内存溢出的情况,进而导致在鸿蒙系统中进行VR展示时出现播放卡顿的问题。

技术实现思路

[0003]本申请的主要目的在于提供一种鸿蒙系统基于纹理压缩的VR展示方法、电子设备及介质,旨在解决在鸿蒙系统中进行VR展示时出现播放卡顿的技术问题。
[0004]为实现上述目的,本申请提供一种鸿蒙系统基于纹理压缩的VR展示方法,所述鸿蒙系统基于纹理压缩的VR展示方法包括:获取播放指令,在磁盘中读取所述播放指令对应的压缩纹理数据,并通过GPU对所述压缩纹理数据进行浮点运算、渲染以及栅格化,生成图像数据,其中,所述压缩纹理数据是对目标展示物的图片集合中各图片进行纹理压缩得到;依据所述播放指令播放所述图像数据,以进行所述目标展示物的VR展示。
[0005]可选地,所述获取播放指令,在磁盘中读取所述播放指令对应的压缩纹理数据,并通过GPU对所述压缩纹理数据进行浮点运算、渲染以及栅格化,生成图像数据的步骤包括:通过可视化界面获取用户输入的播放指令;当所述播放指令为自动播放指令时,在磁盘中读取所述播放指令对应的压缩纹理数据,并通过OpenGL ES与GPU,根据预设加载速度对所述压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据;当所述播放指令为手势指令时,在磁盘中读取所述播放指令对应的压缩纹理数据,并通过OpenGL ES与GPU,根据所述手势指令对应的播放位置对所述压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据。
[0006]可选地,所述通过OpenGL ES与GPU,根据所述手势指令对应的播放位置对所述压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据的步骤包括:将所述压缩纹理数据添加到各序列帧组中;根据所述手势指令,确定需要展示的播放区域,并查找所述播放区域对应的序列
帧组;根据所述手势指令与所述序列帧组中的双向循环链表,通过OpenGL ES与GPU,依次对所述序列帧组中的压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据。
[0007]可选地,所述根据所述手势指令与所述序列帧组中的双向循环链表,通过OpenGL ES与GPU,依次对所述序列帧组中的压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据的步骤包括:根据所述手势指令对应的移动方向,确定所述双向循环链表的链接方向;通过OpenGL ES与GPU,基于所述链接方向依次对所述序列帧组中的压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据。
[0008]可选地,所述通过OpenGL ES与GPU,根据预设加载速度对所述压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据的步骤包括:将所述压缩纹理数据添加到自动序列帧组中;基于所述自动序列帧组中的双向循环链表,通过OpenGL ES与GPU,依据预设初始帧和所述预设加载速度对所述序列帧组中的压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据;当运算到所述自动序列帧组的最后一帧时,跳转到所述预设初始帧。
[0009]可选地,在所述获取播放指令,在磁盘中读取所述播放指令对应的压缩纹理数据,并通过GPU对所述压缩纹理数据进行浮点运算、渲染以及栅格化,生成图像数据的步骤之前,还包括:根据所述目标展示物对应的VR展示设备,获取所述VR展示设备对应的配置文件;根据所述配置文件,配置各VR展示组件的适配参数,其中,所述VR展示组件至少包括视频组件、三维沙盘组件、动画组件、放大器组件以及图片组件中的一种,所述适配参数至少包括内容、大小以及位置中的一种。
[0010]可选地,所述鸿蒙系统基于纹理压缩的VR展示方法还包括:当所述目标展示物对应的数据包需要更新时,根据原始数据包和更新数据包生成差量数据包;将所述差量数据包推送给用户,以供所述用户进行数据包更新。
[0011]可选地,所述鸿蒙系统基于纹理压缩的VR展示方法包括:将所述目标展示物进行3D建模,得到所述目标展示物对应的图片集合;将所述图片集合中各图片进行纹理压缩,得到所述压缩纹理数据。
[0012]本申请还提供一种鸿蒙系统基于纹理压缩的VR展示装置,所述鸿蒙系统基于纹理压缩的VR展示装置应用于鸿蒙系统基于纹理压缩的VR展示设备,所述鸿蒙系统基于纹理压缩的VR展示装置包括:运算渲染模块,用于获取播放指令,在磁盘中读取所述播放指令对应的压缩纹理数据,并通过GPU对所述压缩纹理数据进行浮点运算、渲染以及栅格化,生成图像数据,其中,所述压缩纹理数据是对目标展示物的图片集合中各图片进行纹理压缩得到;图片播放模块,用于将据所述播放指令播放所述图像数据,以进行所述目标展示物的VR展示。
[0013]可选地,所述运算渲染模块还用于:
通过可视化界面获取用户输入的播放指令;当所述播放指令为自动播放指令时,在磁盘中读取所述播放指令对应的压缩纹理数据,并通过GPU与OpenGL ES根据预设加载速度对所述压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据;当所述播放指令为手势指令时,在磁盘中读取所述播放指令对应的压缩纹理数据,并通过GPU与OpenGL ES根据所述手势指令对应的播放位置对所述压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据。
[0014]可选地,所述运算渲染模块还用于:将所述压缩纹理数据添加到各序列帧组中;根据所述手势指令,确定需要展示的播放区域,并查找所述播放区域对应的序列帧组;根据所述手势指令与所述序列帧组中的双向循环链表,通过OpenGL ES与GPU,依次对所述序列帧组中的压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据。
[0015]可选地,所述运算渲染模块还用于:根据所述手势指令对应的移动方向,确定所述双向循环链表的链接方向;通过OpenGL ES与GPU,基于所述链接方向依次对所述序列帧组中的压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据。
[0016]可选地,所述运算渲染模块还用于:将所述压缩纹理数据添加到自动序列帧组中;根据所述自动序列帧组中的双向本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种鸿蒙系统基于纹理压缩的VR展示方法,其特征在于,所述鸿蒙系统基于纹理压缩的VR展示方法包括:获取播放指令,在磁盘中读取所述播放指令对应的压缩纹理数据,并通过GPU对所述压缩纹理数据进行浮点运算、渲染以及栅格化,生成图像数据,其中,所述压缩纹理数据是对目标展示物的图片集合中各图片进行纹理压缩得到;依据所述播放指令播放所述图像数据,以进行所述目标展示物的VR展示。2.如权利要求1所述鸿蒙系统基于纹理压缩的VR展示方法,其特征在于,所述获取播放指令,在磁盘中读取所述播放指令对应的压缩纹理数据,并通过GPU对所述压缩纹理数据进行浮点运算、渲染以及栅格化,生成图像数据的步骤包括:通过可视化界面获取用户输入的播放指令;当所述播放指令为自动播放指令时,在磁盘中读取所述播放指令对应的压缩纹理数据,并通过OpenGL ES与GPU,根据预设加载速度对所述压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据;当所述播放指令为手势指令时,在磁盘中读取所述播放指令对应的压缩纹理数据,并通过OpenGL ES与GPU,根据所述手势指令对应的播放位置对所述压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据。3.如权利要求2所述鸿蒙系统基于纹理压缩的VR展示方法,其特征在于,所述通过OpenGL ES与GPU,根据所述手势指令对应的播放位置对所述压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据的步骤包括:将所述压缩纹理数据添加到各序列帧组中;根据所述手势指令,确定需要展示的播放区域,并查找所述播放区域对应的序列帧组;根据所述手势指令与所述序列帧组中的双向循环链表,通过OpenGL ES与GPU,依次对所述序列帧组中的压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据。4.如权利要求3所述鸿蒙系统基于纹理压缩的VR展示方法,其特征在于,所述根据所述手势指令与所述序列帧组中的双向循环链表,通过OpenGL ES与GPU,依次对所述序列帧组中的压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据的步骤包括:根据所述手势指令对应的移动方向,确定所述双向循环链表的链接方向;通过OpenGL ES与GPU,基于所述链接方向依次对所述序列帧组中的压缩纹理数据进行浮点运算、渲染以及栅格化,生成所述图像数据。5.如权利要求2所述鸿蒙系统基于纹理压缩的VR...

【专利技术属性】
技术研发人员:周康陶颖梁嘉豪
申请(专利权)人:深圳市明源云客电子商务有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1