[发明专利]一种材质参数存储、材质参数获取方法及装置在审
申请号: | 201811087967.2 | 申请日: | 2018-09-18 |
公开(公告)号: | CN109242758A | 公开(公告)日: | 2019-01-18 |
发明(设计)人: | 程佳;黄衫 | 申请(专利权)人: | 珠海金山网络游戏科技有限公司;成都西山居世游科技有限公司 |
主分类号: | G06T1/60 | 分类号: | G06T1/60;G06T1/20;G06F16/901 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙) 11413 | 代理人: | 赵元;马敬 |
地址: | 519080 广东省珠海市*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 材质参数 存储 索引信息 渲染图像 参数表 索引信息存储 缓冲区 应用 | ||
本发明实施例提供了一种材质参数存储、材质参数获取方法及装置,该方法包括:获取待渲染图像的材质参数;获取用于存储所获取材质参数的参数表的索引信息;根据所获取的索引信息,将所获取的材质参数存储到所述参数表中,并将所获取的索引信息存储到几何缓冲区G‑Buffer中。应用本发明实施例提供的技术方案可以在待渲染图像包含的材质较多时也能够存储全部的材质参数。
技术领域
本发明涉及计算机应用技术领域,特别是涉及一种材质参数存储、材质参数获取方法及装置。
背景技术
随着显卡技术的发展,延迟渲染作为一种3D图形渲染方法逐渐被推广。延迟渲染主要包括:几何阶段和着色阶段。在几何阶段中,GPU(Graphics Processing Unit,图形处理器)获取图像的材质参数,如:粗糙度、法线方向等参数,并将获取的材质参数存储到G-buffer(Geometric Buffer,几何缓冲区)中;在着色阶段中,GPU利用在G-buffer中缓存的材质参数对图像中的像素进行光照计算,得到渲染后的图像。
然而,发明人在实现本发明的过程中发现:随着G-buffer中存储的材质参数增多,GPU的工作性能会降低;并且,由于所要渲染的图像中会包含不同的材质并且每一个材质均拥有一组材质参数,那么当所要渲染的图像包含的材质较多时,则会导致所要存储的材质参数可能会超出G-buffer中能够存储材质参数的数量上限,也就是G-buffer中不能存储全部材质参数,导致渲染后得到的图像的画质不能符合预期。
发明内容
本发明实施例的目的在于提供一种材质参数存储、材质参数获取方法及装置,以在待渲染图像包含的材质较多时也能够存储全部的材质参数。具体技术方案如下:
本发明实施的一方面,提供了一种材质参数存储方法,所述方法包括:
获取待渲染图像的材质参数;
获取用于存储所获取材质参数的参数表的索引信息;
根据所获取的索引信息,将所获取的材质参数存储到所述参数表中,并将所获取的索引信息存储到几何缓冲区G-Buffer中。
可选的,在所述获取用于存储所获取材质参数的参数表的索引信息的步骤之前,还包括:
在CPU中创建所述参数表;
为所述参数表分配索引信息。
可选的,所述将所获取的索引信息存储到几何缓冲区G-Buffer中的步骤,包括:
在G-Buffer中包含的渲染目标中确定用于存储所获取索引信息的渲染目标;
将所获取的索引信息存储到所确定渲染目标的Alpha通道。
可选的,所述根据所获取的索引信息,将所获取的材质参数存储到所述参数表中的步骤,包括:
判断所获取材质参数的数量是否超出所述G-Buffer的存储材质参数的数量上限;
如果是,将第一数量个材质参数存储到所述G-Buffer中,将第二数量个材质参数存储到所述参数表中,其中,所述第一数量小于所述数量上限,所述第二数量为所获取的材质参数的数量与所述第一数量之间的差值。
可选的,所述将第一数量材质参数存储到所述G-Buffer中,将第二数量材质参数存储到所述参数表中的步骤,包括:
确定所获取的材质参数中的共用材质参数,其中,所述共用材质参数为所述待渲染图像包含的各个材质拥有的材质参数中相同的材质参数;
判断所确定的共用材质参数的数量是否小于所述数量上限;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珠海金山网络游戏科技有限公司;成都西山居世游科技有限公司,未经珠海金山网络游戏科技有限公司;成都西山居世游科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811087967.2/2.html,转载请声明来源钻瓜专利网。