[发明专利]一种基于GPU特性的实时渲染GUI的优化方法在审
申请号: | 201911102678.X | 申请日: | 2019-11-12 |
公开(公告)号: | CN110874856A | 公开(公告)日: | 2020-03-10 |
发明(设计)人: | 刘泳;王秀龙 | 申请(专利权)人: | 广州银汉科技有限公司 |
主分类号: | G06T11/00 | 分类号: | G06T11/00;G06T11/40;G06T1/20 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 510630 广东省广州*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 gpu 特性 实时 渲染 gui 优化 方法 | ||
本发明公开一种基于GPU特性的实时渲染GUI的优化方法,预先创建两张N*N的纹理,一般来说N=1024或2048,把UI设计出的原始图片,动态的映射到这两张运行时纹理上,动态的迭入迭出;所有的UI再进行绘制的时候,均通过这该两张纹理来进行绘制。本发明中,设计师无需关注每一个小的图片元素应该归属于哪个图集,把真正的精力放在GUI的设计上,从而真正的发挥美术设计师擅长的领域,提高工作效率,与Unity等商业引擎不同的是,不仅仅是去掉图集这个概念,而是从真正的实现上去掉图集。
技术领域
本发明涉及计算机图形学、网络游戏、实时可视化UI交互技术领域,特别是涉及一种基于GPU特性的实时渲染GUI的优化方法。
背景技术
图形化界面(Graphic User Interface,以下简称GUI)在人们的生活中起到了至关重要的作用,从windows时代开始,大量的图形化操作就涌入了人们的视野并逐步渗透到人们生活的方方面面,而实时而又丰富的表现带给人们很好的用于体验,对于使用在游戏中的用户界面,则是一款游戏不可缺少的组成的部分。一般来说,GUI界面的开发过程如下:首先美术构思,并将真正的图片绘制出来。其次是,程序将大量的原始图片按照一定的规则进行组织,在适当的时机进行绘制。
但,在实际的操作中,必然会遇到以下几个问题,而这两点也是GUI系统的重点和难点:
1.随着项目的迭代,越来越多的图片被制作出来,资源量变大。
2.在绘制时需要进行批次的控制(使用相同的渲染状态绘制一定数量的图元,如纹理相同),越少的批次意味着越高的执行效率。
在传统的实现方法中,为了解决批次问题,往往采用的是图集的方案,将同时展现的图片元素放在一起,组成一张大的图片,再进行绘制,然而实际的过程中,UI设计师往往难以驾驭项目后期产生的大量的UI元素,不仅花费大量的时间进行图片的组织和布局的调整,然而也很难达到完美解决批次减低到效果。
使用图集的另外的一个弊端是图集中很多不需要的图片元素也随之一起加载,越大的图片意味着更多的内存消耗。在现代的游戏当中,往往对质量,尤其是GUI的质量都是非常高的,一张1024*1024的图片就要占去4M内存,而往往实际是同时用到几张。
综上所述,图集方案带来的缺陷如下:
1.渲染批次优化不够彻底,同时依赖图集组织,甚至是业务逻辑;
2.设计师时时刻刻都要有图集的概念,而组织大量的图片元素的过程限制设计师发挥;
3.工艺制作流程复杂,因为受到批次限制,设计师与程序员之间需要做大量沟通以调优,浪费在其中的时间成本不计其数。
在一些通用的商业引擎中,如Unity和UE,已经开始认识到图集带给设计师的困扰,开始将图集的概念进行隐藏,但在工程导出为实际产品时,依然会以图集的方式进行工作,仅在一定程度上减轻了GUI设计师的设计负担。
发明内容
本发明的目的是提供一种基于GPU特性的实时渲染GUI的优化方法,以解决上述问题。
为实现上述目的,本发明提供了一种基于GPU特性的实时渲染GUI的优化方法,包括:
预先创建两张N*N的纹理,一般来说N=1024或2048,把UI设计出的原始图片,动态的映射到这两张运行时纹理上,动态的迭入迭出;所有的UI再进行绘制的时候,均通过这该两张纹理来进行绘制;
上述过程中,将美术设计师的若干散图片,通过矩形填充算法填充到运行时纹理;
其中,所述矩形填充算法的图形结构为一颗三叉树,树节点如下:
节点信息
{
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于广州银汉科技有限公司,未经广州银汉科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201911102678.X/2.html,转载请声明来源钻瓜专利网。