[发明专利]一种渲染方法、装置、电子设备及存储介质在审
申请号: | 202310260517.3 | 申请日: | 2023-03-13 |
公开(公告)号: | CN116206038A | 公开(公告)日: | 2023-06-02 |
发明(设计)人: | 李江坡 | 申请(专利权)人: | 北京字跳网络技术有限公司 |
主分类号: | G06T15/00 | 分类号: | G06T15/00 |
代理公司: | 北京中知法苑知识产权代理有限公司 11226 | 代理人: | 李明 |
地址: | 100190 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 渲染 方法 装置 电子设备 存储 介质 | ||
本公开提供了一种渲染方法、装置、电子设备及存储介质,该方法包括,响应于转换操作,获得第一材质对象的待转换着色器和目标着色器,其中,所述第一材质对象是基于所述待转换着色器生成的;根据预建立的所述目标着色器中目标属性名称和非目标着色器中非目标属性名称的映射关系,确定所述待转换着色器中待转换属性名称所匹配的目标属性名称,并将所述待转换属性名称的取值赋值给所匹配的所述目标属性名称;根据赋值后的所述目标着色器,针对所述第一材质对象重新生成并渲染获得第二材质对象,这样,可以实现不同种类材质对象之间的转换,保证渲染效果。
技术领域
本公开涉及计算机技术领域,具体而言,涉及一种渲染方法、装置、电子设备及存储介质。
背景技术
Unity是一种实时3D互动内容创作和开发平台,可以支持用户制作材质,进行用户生成内容(User Generated Content,UGC)的创作,然后用户可以将制作的材质上传到所想应用的应用程序(Application,APP)软件或平台中以进行使用,但是用户自定义创作的材质的着色器(Shader)种类多种多样,可能并不符合APP对于官方Shader的需求,导致上传后,出现渲染出错或者无法获得预期渲染效果的问题,而相关技术中针对此还未有相关的解决方案。
发明内容
本公开实施例至少提供一种渲染方法、装置、电子设备及存储介质。
第一方面,本公开实施例提供了一种渲染方法,包括:
响应于转换操作,获得第一材质对象的待转换着色器和目标着色器,其中,所述第一材质对象是基于所述待转换着色器生成的;
根据预建立的所述目标着色器中目标属性名称和非目标着色器中非目标属性名称的映射关系,确定所述待转换着色器中待转换属性名称所匹配的目标属性名称,并将所述待转换属性名称的取值赋值给所匹配的所述目标属性名称;
根据赋值后的所述目标着色器,针对所述第一材质对象重新生成并渲染获得第二材质对象。
一种可选的实施例中,所述方法还包括:
获取所述目标着色器中包括的各所述目标属性名称;
获取各所述非目标着色器中包括的各所述非目标属性名称;
根据各所述目标属性名称和各所述非目标属性名称所表征的功能,建立各所述目标属性名称和各所述非目标属性名称之间的映射关系。
一种可选的实施例中,所述根据预建立的所述目标着色器中目标属性名称和非目标着色器中非目标属性名称的映射关系,确定所述待转换着色器中待转换属性名称所匹配的目标属性名称,并将所述待转换属性名称的取值赋值给所匹配的所述目标属性名称,包括:
对所述第一材质对象进行反序列化解析,获得所述待转换着色器中包括的待转换属性名称;
根据预建立的所述目标着色器中目标属性名称和非目标着色器中非目标属性名称的映射关系,确定所述待转换属性名称所匹配的目标属性名称;
将所述待转换着色器转换为所述目标着色器,并将所述待转换属性名称的取值赋值给所匹配的所述目标属性名称。
一种可选的实施例中,所述方法还包括:在未记录有所述待转换属性名称和所述目标属性名称的映射关系情况下,根据所述目标属性名称在所述目标着色器的程序文件中的写顺序,以及所述待转换属性名称在所述待转换着色器的程序文件中的写顺序,确定所述待转换属性名称所匹配的所述目标属性名称。
一种可选的实施例中,根据所述目标属性名称在所述目标着色器的程序文件中的写顺序,以及所述待转换属性名称在所述待转换着色器的程序文件中的写顺序,确定所述待转换属性名称所匹配的所述目标属性名称,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京字跳网络技术有限公司,未经北京字跳网络技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310260517.3/2.html,转载请声明来源钻瓜专利网。