CN109847358A - 一种降低场景像素填充率的方法 - Google Patents
一种降低场景像素填充率的方法 Download PDFInfo
- Publication number
- CN109847358A CN109847358A CN201811579839.XA CN201811579839A CN109847358A CN 109847358 A CN109847358 A CN 109847358A CN 201811579839 A CN201811579839 A CN 201811579839A CN 109847358 A CN109847358 A CN 109847358A
- Authority
- CN
- China
- Prior art keywords
- list
- area information
- filling rate
- pixel filling
- area
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Landscapes
- Processing Or Creating Images (AREA)
- Image Generation (AREA)
Abstract
一种降低场景像素填充率的方法,包括:创建材质球,使用绘制不透明网格的着色器;管理类中维护一个打开UI区域大小的列表;计算所述UI的区域信息并添加到所述列表中;根据区域信息列表计算出屏幕空间内遮挡区域并集的最大矩形的四个顶角并构建网格;创建命令缓冲区,将所述绘制命令缓冲插入到绘制不透明物体前并执行绘制命令;进行场景绘制。可以方便的集成到已有UI系统里,并支持多个UI叠加打开、关闭时的遮挡区域自动适配,提高GPU的效率。
Description
技术领域
本发明涉及游戏引擎技术领域,特别是涉及一种降低场景像素填充率的方法。
背景技术
在现有游戏制作中,一般采用两个相机分别渲染UI和游戏场景。但当玩家打开一个遮蔽区域较大(或全屏)的不透明UI时,实际上场景相机渲染的部分元素我们看不到了,但场景相机仍然提交渲染任务给GPU。
对于全屏的UI,设计人员可以在打开UI时,临时停止场景相机的渲染,降低场景渲染压力;但对于一些游戏,功能UI并不是全屏的,设计人员不能停止场景相机的渲染,使得场景渲染的压力过大,也降低了GPU的效率。
发明内容
为了解决现有技术存在的不足,本发明的目的在于提供一种降低场景像素填充率的方法,利用移动GPU的瓦片/分块渲染架构的特性,以及Unity引擎渲染排序的规则,省去场景中被UI挡住的部分的像素填充操作,提高GPU的效率。
为实现上述目的,本发明提供的一种降低场景像素填充率的方法,包括:
创建材质球,使用绘制不透明网格的着色器;
维护打开UI区域大小的列表;
计算所述UI的区域信息并添加到所述列表中;
根据区域信息列表计算出屏幕空间内遮挡区域并集的最大矩形的四个顶角并构建网格;
创建命令缓冲区,将所述绘制命令缓冲插入到绘制不透明物体前并执行绘制命令;
进行场景绘制。
进一步地,所述着色器,渲染队列标注为不透明渲染,并且写入深度信息。
更进一步地,所述计算所述UI的区域信息并添加到所述列表中的步骤,进一步包括:
根据UI的预设大小和所适配机型的屏幕分辨率计算得出相对于屏幕空间的中心位置和高宽信息;
将所述区域信息加入到所述列表,关闭时将该区域信息移除。
为实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述计算机指令运行时执行如上文所述的降低场景像素填充率的方法步骤。
为实现上述目的,本发明还提供一种图像处理终端设备,其特征在于,包括存储器和处理器,所述存储器上储存有在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行如上文所述的降低场景像素填充率的方法步骤。
本发明的降低场景像素填充率的方法,具有以下有益效果:
1)在Unity移动游戏中UI打开时,利用了移动GPU的瓦片/分块渲染架构的特性,以及Unity引擎渲染排序的规则,将场景中被UI挡住的部分的像素填充操作省去。
2)可以方便的集成到已有UI系统里,并支持多个UI叠加打开、关闭时的遮挡区域自动适配,提高GPU的效率。
本发明的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本发明而了解。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,并与本发明的实施例一起,用于解释本发明,并不构成对本发明的限制。在附图中:
图1为根据本发明的降低场景像素填充率的方法流程图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
图1为根据本发明的降低场景像素填充率的方法流程图,下面将参考图1,对本发明的降低场景像素填充率方法进行详细描述。
首先,在步骤101,创建材质球,使用绘制不透明网格的着色器。该步骤中,在逻辑中创建一个材质球,并使用绘制不透明网格的着色器,该着色器不经空间转换矩阵变换,因为后面构建的网格已经转换到屏幕空间。
优选地,使用的所述着色器渲染队列必须标注为不透明渲染,并且需要写入深度信息。
在步骤102,管理类中维护一个打开UI区域大小的列表。
在步骤103,计算所述UI的区域信息并添加到所述列表中。
优选地,所述UI的区域信息包括,根据UI的预设大小和所适配机型的屏幕分辨率计算得出相对于屏幕空间的中心位置和高宽信息。该步骤中,当打开某个UI时,根据UI的预设大小和所适配机型的屏幕分辨率计算得出相对于屏幕空间的中心位置和高宽信息。
优选地,将所述区域信息加入到所述列表,关闭时将该区域信息移除。
在步骤104,根据区域信息列表计算出屏幕空间内遮挡区域并集的最大矩形的四个顶角并构建网格。该步骤中,当UI完成打开、关闭过渡动画后,根据区域信息列表计算出屏幕空间内遮挡区域并集的最大矩形的四个顶角并构建网格。
在步骤105,创建命令缓冲区,将所述绘制命令缓冲插入到绘制不透明物体前并执行绘制命令。该步骤中,创建一个命令缓冲区(CommandBuffer),并将该绘制命令缓冲插入到场景相机绘制不透明物体前的时刻(BeforeForwardOpaque),并执行该绘制命令。
在步骤106,进行场景绘制。该步骤中,按正常的流程绘制场景物件。由于上述步骤绘制的对象在不透明渲染队列且写入了深度。游戏引擎中不透明物体是从前往后依次渲染的,依托于移动GPU的瓦片/分块渲染架构,离相机远的物件在像素填充阶段,由于深度测试返回false,直接不进行操作,从而提高GPU的效率。
为实现上述目的,本发明还提供一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述计算机指令运行时执行如上文所述的降低场景像素填充率的方法步骤。
为实现上述目的,本发明还提供一种图像处理终端设备,其特征在于,包括存储器和处理器,所述存储器上储存有在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行如上文所述的降低场景像素填充率的方法步骤。
本领域普通技术人员可以理解:以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种降低场景像素填充率的方法,包括以下步骤:
创建材质球,使用绘制不透明网格的着色器;
维护打开UI区域大小的列表;
计算所述UI的区域信息并添加到所述列表中;
根据区域信息列表计算出屏幕空间内遮挡区域并集的最大矩形的四个顶角并构建网格;
创建命令缓冲区,将所述绘制命令缓冲插入到绘制不透明物体前并执行绘制命令;
进行场景绘制。
2.根据权利要求1所述的方法,其特征在于,所述着色器,渲染队列标注为不透明渲染,并且写入深度信息。
3.根据权利要求1所述的方法,其特征在于,所述计算所述UI的区域信息并添加到所述列表中的步骤,进一步包括:
根据UI的预设大小和所适配机型的屏幕分辨率计算得出相对于屏幕空间的中心位置和高宽信息;
将所述区域信息加入到所述列表,关闭时将该区域信息移除。
4.一种计算机可读存储介质,其上存储有计算机指令,其特征在于,所述计算机指令运行时执行权利要求1至4任一项所述的降低场景像素填充率的方法步骤。
5.一种图像处理终端设备,其特征在于,包括存储器和处理器,所述存储器上储存有在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行权利要求1至4任一项所述的降低场景像素填充率的方法步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811579839.XA CN109847358A (zh) | 2018-12-24 | 2018-12-24 | 一种降低场景像素填充率的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811579839.XA CN109847358A (zh) | 2018-12-24 | 2018-12-24 | 一种降低场景像素填充率的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109847358A true CN109847358A (zh) | 2019-06-07 |
Family
ID=66892019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811579839.XA Pending CN109847358A (zh) | 2018-12-24 | 2018-12-24 | 一种降低场景像素填充率的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109847358A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113393555A (zh) * | 2020-03-11 | 2021-09-14 | 福建天晴数码有限公司 | 一种基于着色器的屏幕填充率统计方法及其系统 |
CN116883228A (zh) * | 2023-09-08 | 2023-10-13 | 武汉凌久微电子有限公司 | 一种gpu像素填充率测量方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105487848A (zh) * | 2014-10-08 | 2016-04-13 | Tcl集团股份有限公司 | 一种3d应用的显示刷新方法及系统 |
EP3145200A1 (en) * | 2007-01-12 | 2017-03-22 | ActiveVideo Networks, Inc. | Mpeg objects and systems and methods for using mpeg objects |
CN108479067A (zh) * | 2018-04-12 | 2018-09-04 | 网易(杭州)网络有限公司 | 游戏画面的渲染方法和装置 |
-
2018
- 2018-12-24 CN CN201811579839.XA patent/CN109847358A/zh active Pending
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP3145200A1 (en) * | 2007-01-12 | 2017-03-22 | ActiveVideo Networks, Inc. | Mpeg objects and systems and methods for using mpeg objects |
CN105487848A (zh) * | 2014-10-08 | 2016-04-13 | Tcl集团股份有限公司 | 一种3d应用的显示刷新方法及系统 |
CN108479067A (zh) * | 2018-04-12 | 2018-09-04 | 网易(杭州)网络有限公司 | 游戏画面的渲染方法和装置 |
Non-Patent Citations (4)
Title |
---|
ACKT: "Dynamic Graphics", 《HTTPS://HUB.PACKTPUB.COM/DYNAMIC-GRAPHICS/#》 * |
ARVIN ZHANG: "Unity UI优化(二) - 填充率,画布和输入", 《HTTPS://BLOG.CSDN.NET/QQ_21397217/ARTICLE/DETAILS/82458304》 * |
HONGFEI233: "Unity3D——使用遮挡剔除优化游戏场景&DrawCall优化", 《HTTPS://BLOG.CSDN.NET/VIRUS2014/ARTICLE/DETAILS/53343240》 * |
WEIXIN_30546933: "可编程脚本渲染管线SRP", 《HTTPS://BLOG.CSDN.NET/WEIXIN_30546933/ARTICLE/DETAILS/97964882》 * |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113393555A (zh) * | 2020-03-11 | 2021-09-14 | 福建天晴数码有限公司 | 一种基于着色器的屏幕填充率统计方法及其系统 |
CN113393555B (zh) * | 2020-03-11 | 2023-09-15 | 福建天晴数码有限公司 | 一种基于着色器的屏幕填充率统计方法及其系统 |
CN116883228A (zh) * | 2023-09-08 | 2023-10-13 | 武汉凌久微电子有限公司 | 一种gpu像素填充率测量方法 |
CN116883228B (zh) * | 2023-09-08 | 2023-12-01 | 武汉凌久微电子有限公司 | 一种gpu像素填充率测量方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105447898B (zh) | 一种虚拟现实设备中显示2d应用界面的方法和装置 | |
CN105354872B (zh) | 一种基于3d网页游戏的渲染引擎、实现方法及制作工具 | |
US9760968B2 (en) | Reduction of graphical processing through coverage testing | |
CN106030663B (zh) | 具有共享数据信道的着色器管线 | |
US10282806B2 (en) | Graphics Accelerator | |
CN109847358A (zh) | 一种降低场景像素填充率的方法 | |
CN110291563A (zh) | 图形处理中的多个着色器进程 | |
CA3045133C (en) | Systems and methods for augmented reality applications | |
CN110555895A (zh) | 在中排序架构中利用帧间相干性 | |
GB2363304A (en) | 3D Compositing using 2D pipeline system | |
CN107122176B (zh) | 一种图形绘制方法及装置 | |
CN109196549A (zh) | 动态低分辨率z测试大小 | |
CN108958724A (zh) | 三维可视化引擎构建方法、装置、引擎、浏览器、设备及存储介质 | |
CN109118556B (zh) | 一种实现ui界面动画过渡效果的方法、系统及存储介质 | |
KR20180059892A (ko) | 픽셀 타일 레벨 입도로의 그래픽스 프로세싱 유닛 선점 | |
CN113079408B (zh) | 视频播放方法、装置和系统 | |
US10121222B2 (en) | Bandwidth efficient method for generating an alpha hint buffer | |
US20190005604A1 (en) | Bin streamout preemption in a graphics processing pipeline | |
CN107424206A (zh) | 一种利用现实环境影响虚拟场景光影表现的互动方法 | |
CN103024318A (zh) | 电视图形加速处理方法及装置 | |
US20080181509A1 (en) | Method and Apparatus for a Fast Graphic Rendering Realization Methodology Using Programmable Sprite Control | |
TWI474280B (zh) | 增進繪圖處理單元之總處理量的方法與系統 | |
CN106959897A (zh) | 一种基于Unity3D图像渲染的优化方法及系统 | |
CN102591656B (zh) | 一种窗口动画实现方法和装置 | |
CN109859303A (zh) | 图像的渲染方法、装置、终端设备及可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20190607 |
|
WD01 | Invention patent application deemed withdrawn after publication |