[发明专利]一种基于顶点缓冲区实现的顶点着色方法在审
申请号: | 202210022711.3 | 申请日: | 2022-01-10 |
公开(公告)号: | CN114359432A | 公开(公告)日: | 2022-04-15 |
发明(设计)人: | 冀谦祥;莫潘良 | 申请(专利权)人: | 深圳中微电科技有限公司 |
主分类号: | G06T11/00 | 分类号: | G06T11/00;G06T1/20 |
代理公司: | 深圳市添源创鑫知识产权代理有限公司 44855 | 代理人: | 周椿 |
地址: | 518000 广东省深圳市南山区粤*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 顶点 缓冲区 实现 着色 方法 | ||
本发明涉及图形渲染技术领域,特别涉及一种基于顶点缓冲区实现的顶点着色方法。其包括步骤:S1.经过顶点数据准备阶段,硬件模块得到需要进行顶点着色的顶点数据和对应顶点数据的顶点索引;S2.将需要进行顶点着色的顶点索引发送至顶点着色模块和后续处理模块;S3.后续处理模块依据顶点索引对顶点缓冲区域进行查询,若查询到所需状态的顶点,则后续处理模块直接获取该顶点,结束流程;S4.顶点着色模块依据接收到的顶点索引对顶点缓冲区域内的顶点进行查询并渲染未着色的顶点;S5.后续处理模块依据顶点索引对顶点缓冲区域内的顶点进行查询并获取渲染完成后的顶点执行后续处理过程。增加一个用于顶点缓冲的存储区域解决顶点出现重复渲染,性能差的问题。
技术领域
本发明涉及图形渲染技术领域,特别涉及一种基于顶点缓冲区实现的顶点着色方法。
背景技术
现有的GPU顶点着色流程为:将需要进行渲染的顶点输入GPU顶点着色模块,由硬件对每个顶点进行顶点着色。着色完成后直接将顶点数据输送至后续处理模块。
该流程的优点为硬件成本代价较低;但缺点是顶点着色线性执行,输入相同顶点需要重复进行渲染,性能较差。
发明内容
本发明提供一种基于顶点缓冲区实现的顶点着色方法,旨在增加一个用于顶点缓冲的存储区域解决顶点出现重复渲染,性能差的问题。
本发明提供一种基于顶点缓冲区实现的顶点着色方法,包括以下步骤:
S1.经过顶点数据准备阶段,硬件模块得到需要进行顶点着色的顶点数据和对应顶点数据的顶点索引;
S2.将需要进行顶点着色的顶点索引发送至顶点着色模块和后续处理模块;
S3.后续处理模块依据顶点索引对顶点缓冲区域进行查询,若查询到所需状态的顶点,则后续处理模块直接获取该顶点,结束流程;若查询不到所需状态的顶点,则执行步骤S4;
S4.顶点着色模块依据接收到的顶点索引对顶点缓冲区域内的顶点进行查询并渲染未着色的顶点;
S5.后续处理模块依据顶点索引对顶点缓冲区域内的顶点进行查询并获取渲染完成后的顶点执行后续处理过程。
作为本发明的进一步改进,所述步骤S3具体包括:
后续处理模块依据顶点索引对顶点缓冲区域进行查询,若查询到顶点缓冲区域中存在顶点索引对应的顶点且该顶点处于完成状态,则后续处理模块直接获取该顶点,结束流程;若查询不到所需状态的顶点,则执行步骤S4。
作为本发明的进一步改进,所述步骤S4包括:
S41.顶点着色模块依据顶点索引对顶点缓冲区域进行查询,若顶点缓冲区域中已存在完成状态的该顶点,则顶点着色模块工作完成;否则,在顶点缓冲区域中寻找未被使用的区域,将需要进行顶点着色的顶点坐标数据和顶点索引预存储于顶点缓冲区域中,并将顶点缓冲区域中此顶点的状态由空闲状态转化为发起状态。
作为本发明的进一步改进,所述步骤S4还包括:
S42.在顶点缓冲区域接收到一定量需要顶点着色的顶点后,顶点数据准备阶段向顶点着色模块发送信号,顶点着色模块依据接收到的顶点索引,在顶点缓冲中查询并获取对应顶点索引的顶点坐标数据,并将该顶点的状态由发起状态转换为工作状态,顶点着色模块对相应顶点进行顶点着色工作。
作为本发明的进一步改进,所述步骤S4还包括:
S43.顶点着色模块完成一个顶点的顶点着色工作后,将该顶点坐标数据重新存放至顶点缓冲区域中原顶点坐标数据的位置,并将该顶点的状态由工作状态转换为完成状态。
作为本发明的进一步改进,所述步骤S41顶点预存储过程中,若顶点缓冲区域已满,将顶点缓冲区域中访问次数较少的顶点与新顶点进行替换。
作为本发明的进一步改进,所述步骤S5具体包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于深圳中微电科技有限公司,未经深圳中微电科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210022711.3/2.html,转载请声明来源钻瓜专利网。