[发明专利]一种生成着色器的方法、装置、电子设备及可读介质在审
申请号: | 202110129465.7 | 申请日: | 2021-01-29 |
公开(公告)号: | CN114820270A | 公开(公告)日: | 2022-07-29 |
发明(设计)人: | 吕阳;马锐锋 | 申请(专利权)人: | 北京字节跳动网络技术有限公司 |
主分类号: | G06T1/20 | 分类号: | G06T1/20;G06F8/38 |
代理公司: | 北京市立方律师事务所 11330 | 代理人: | 张筱宁 |
地址: | 100041 北京市石景山区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 生成 着色 方法 装置 电子设备 可读 介质 | ||
本公开实施例提供一种生成着色器的方法、设备及可读介质,涉及计算机图形技术领域。该方法包括:响应于用户通过图形化界面输入的选择指令,确定生成着色器所需的至少两个节点;响应于用户通过图形化界面输入的针对至少两个节点中任意两个节点的连接操作指令,确定至少两个节点之间的连接顺序;依据至少两个节点之间的连接顺序,确定各个节点对应的函数之间的调用顺序;依据调用顺序,通过着色器程序的主函数调用各节点对应的函数,以生成着色器。该方法通过利用节点之间的连接顺序,确定与各节点功能对应的函数的调用顺序后调用各节点对应的函数生成代码块,相比手动编写代码生成着色器的方式,大大缩减了人力资源成本,且效率高。
技术领域
本公开涉及计算机图形技术领域,尤其涉及一种生成着色器的方法、装置、电子设备及可读介质。
背景技术
图形渲染的整个流程被分成一系列的阶段,这些阶段之间是线性串联的关系,前一阶段的输出是后一阶段的输入,前一阶段没有完成,则后一阶段不会启动,这种形式称之为渲染流水线或者渲染管线。
随着图形技术和图形硬件技术的发展,固定功能流水线已经不能满足用户对高品质画面追求。为了得到更好的渲染效果,可以将固定管线中的一些阶段进行了改进,使之不再执行固定的功能,而可以通过用户定制的代码来控制这个阶段的操作,实现更丰富的功能。改进后的渲染流水线称为可编程流水线,在可编程流水线中,由用户定制的代码被称为着色器(Shader)。
着色器替代了传统的固定渲染管线,可以实现3D图形学计算中的相关计算,由于其可编辑性,可以实现各种各样的图像效果而不用受显卡的固定渲染管线限制。但是,在开放图形库(Open Graphics Library,OpenGL)中,首先需要开发人员手动编写代码,然后通过OpenGL提供的函数调用加载相应的代码形成shader,这种方式不仅要占用大量的人力资源,而且效率低。
发明内容
提供该发明内容部分以便以简要的形式介绍构思,这些构思将在后面的具体实施方式部分被详细描述。该发明内容部分并不旨在标识要求保护的技术方案的关键特征或必要特征,也不旨在用于限制所要求的保护的技术方案的范围。
第一方面,提供了一种生成着色器的方法,所述方法包括:
响应于用户通过图形化界面输入的选择指令,确定生成着色器所需的至少两个节点,每一节点指示与其功能对应的函数;
响应于所述用户通过图形化界面输入的针对所述至少两个节点中任意两个节点的连接操作指令,确定所述至少两个节点之间的连接顺序;
依据所述至少两个节点之间的连接顺序,确定各个节点对应的函数之间的调用顺序;
依据所述调用顺序,通过着色器程序的主函数调用各节点对应的函数,以生成所述着色器。
第二方面,提供了一种生成着色器的装置,所述装置包括:
确定模块,用于响应于用户通过图形化界面输入的选择指令,确定生成着色器所需的至少两个节点,每一节点指示与其功能对应的函数;响应于所述用户通过图形化界面输入的针对所述至少两个节点中任意两个节点的连接操作指令,确定所述至少两个节点之间的连接顺序;依据所述至少两个节点之间的连接顺序,确定各个节点对应的函数之间的调用顺序;
处理模块,用于依据所述调用顺序,通过着色器程序的主函数调用各节点对应的函数,以生成所述着色器。
第三方面,提供了一种电子设备,所述设备包括处理器和存储器,所述存储器中存储有至少一条指令、至少一段程序、代码集或指令集,所述至少一条指令、所述至少一段程序、所述代码集或指令集由所述处理器加载并执行以实现本公开第一方面所示的生成着色器的方法。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京字节跳动网络技术有限公司,未经北京字节跳动网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110129465.7/2.html,转载请声明来源钻瓜专利网。