【技术实现步骤摘要】
用于GPU前、后端着色器的顶点属性映射的方法及系统
[0001]本专利技术涉及图形绘制
,尤其涉及一种用于GPU前、后端着色器的顶点属性映射的方法及系统。
技术介绍
[0002]GPU(Graphics Processing Unit,图形处理器)图形绘制过程包含一系列的顺序和步骤,即所谓的流水线,每个步骤完成各自的功能,最终完成图形的绘制。通常情况下,我们把GPU绘制流水线分为两大类:前端流水线(Front Stage)和后端流水线(Back Stage),前者包括输入装配(InputAssembler)、顶点着色器(Vertex Shader)、曲面细分着色器(Tesselation)、图形着色器(Geometry Shader),后者包含光栅化(Rasterize)、像素着色器(Pixel Shader)、输出合并(Output Merge)以及流输出(Stream Out)等。同时我们也将着色器根据其在流水线的位置不同分为前端着色器和后端着色器,前者包括顶点着色器(Vertex Shader)、外壳着色器(Hu ...
【技术保护点】
【技术特征摘要】
1.一种用于GPU前、后端着色器的顶点属性映射的方法,其特征在于,所述方法包括:Step100:根据前端着色器的输出定义和后端着色器的输入定义之间的对应关系,为所述前端着色器的输出顶点属性计算在顶点中间数据缓存区中对应的地址,建立所述输出顶点属性与所述地址之间的第一映射关系;Step200:根据前端着色器的输出定义和后端着色器的输入定义之间的对应关系,为所述后端着色器的输入顶点属性在所述顶点中间数据缓存区中查找对应的地址,建立所述输入顶点属性与所述地址之间的第二映射关系;Step300:根据所述第一映射关系和所述第二映射关系对所述输入顶点属性进行存取处理。2.根据权利要求1所述的方法,其特征在于,Step100具体包括:Step110:预先定义前端着色器的输出顶点属性和后端着色器的输入顶点属性,得到所述前端着色器的输出定义和所述后端着色器的输入定义;Step120:根据所述前端着色器的输出顶点属性是否能够作为所述后端着色器的输入顶点属性,决定所述输出顶点属性是否存储到顶点中间数据存储区;Step130:按照所述输出定义中多个输出顶点属性的顺序,逐个为输出顶点属性顺序分配所述顶点中间数据缓存区的地址;Step140:依据所述前端着色器的输出顶点属性及其对应的地址,建立第一映射关系。3.根据权利要求2所述的方法,其特征在于,Step130具体包括:Step131:基于所述前端着色器的输出定义和所述后端着色器的输入定义之间的对应关系,按照所述各个输出顶点属性的顺序,逐个判断输出顶点属性是否存在对应的输入顶点属性;若不存在对应的输入顶点属性,则执行Step132;若存在对应的输入顶点属性,则执行Step133;Step132:将该输出顶点属性的存储码记录为0,并继续为下一个输出顶点属性分配地址;Step133:根据该输出顶点属性中被对应的输入顶点属性激活的通道,记录该输出顶点属性对应的存储码;Step134:根据该输出顶点属性对应的存储码,在所述顶点中间数据缓存区中分配与存储码中记录的通道具有相同数量的地址。4.根据权利要求3所述的方法,其特征在于,在执行Step134分配地址的过程中,从第一个地址开始顺序为输出顶点属性分配地址。5.根据权利要求3所述的方法,其特征在于,Step300具体包括:Step310:根据所述第一映射关系,通过输出顶点属性的存储码判断是否需要存储该输出顶点属性;若所述存储码为0,则执行Step320;若所述存储码不为0,则执行Step330;Step320:丢弃该输出顶点属性;Step330:查询该输出顶点属性所激活的通道所对应的地址,并向所述顶点中间数据缓存区发送存储请求;Step340:根据存储请求,所述顶点中间数据缓存区将该输出顶点属性所激活的通道数据存储至对应的地址中;Step350:根据所述第...
【专利技术属性】
技术研发人员:朱红彬,张淮声,张越凡,
申请(专利权)人:格兰菲智能科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。