CN111198680B - 一种基于 Arnold 渲染器的文件生成***及方法 - Google Patents
一种基于 Arnold 渲染器的文件生成***及方法 Download PDFInfo
- Publication number
- CN111198680B CN111198680B CN201911328273.8A CN201911328273A CN111198680B CN 111198680 B CN111198680 B CN 111198680B CN 201911328273 A CN201911328273 A CN 201911328273A CN 111198680 B CN111198680 B CN 111198680B
- Authority
- CN
- China
- Prior art keywords
- file
- writing
- programming interface
- arnold
- renderer
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
- G06F8/31—Programming languages or programming paradigms
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供一种基于Arnold渲染器的文件生成***,包括Arnold渲染器的编程接口和MaterialX库的程序接口,其特征在于,包括信息获取模块与文件写出模块,信息获取模块与文件写出模块分别依赖于Arnold渲染器的编程接口和MaterialX库的程序接口实现数据的读写;信息获取模块通过Arnold渲染器的编程接口加载动态库,遍历其中所包含的shader节点及其参数,获取相关信息并传递给文件写出模块;文件写出模块将信息获取模块传递的内容按照MaterialX的格式进行整理分类,然后通过对应的写出接口将这些信息写出至Node Definition文件。
Description
技术领域
本发明具体涉及一种基于Arnold渲染器的文件生成***及方法。
背景技术
MaterialX是一种由工业光魔公司提出的通用材质格式文件,旨在提供一个同一接口,实现材质数据在不同三维软件乃至不同渲染器之间的传输。Node definition文件一种特殊的MaterialX文件,用来提供渲染器相关的节点定义信息,由于一般节点数量巨大,手写该文件显然是不现实的,目前市面上没有类似的可以自动生成该文件的***。
发明内容
本发明的目的是提供一种基于Arnold渲染器的文件生成***及方法,解决了自动生成node definition文件的问题,包括应用于第三方开发的渲染节点,节省了手工书写node definition文件的人力成本。
本发明提供了如下的技术方案:
一种基于Arnold渲染器的文件生成***,包括Arnold渲染器的编程接口和MaterialX库的程序接口;
还包括信息获取模块与文件写出模块,所述信息获取模块与所述文件写出模块分别依赖于所述Arnold渲染器的编程接口和所述MaterialX库的程序接口实现数据的读写;
所述信息获取模块通过所述Arnold渲染器的编程接口加载动态库,遍历其中所包含的shader节点及其参数,获取相关信息并传递给所述文件写出模块;所述文件写出模块将所述信息获取模块传递的内容按照MaterialX的格式进行整理分类,然后通过对应的写出接口将这些信息写出至Node Definition文件。
优选的,所述Arnold渲染器的编程接口包括若干与所述Arnold渲染器进行交互的功能,若干所述功能包括数据查询、数据生成和选项设置。
优选的,所述MaterialX库的程序接口用于提供文件读写的功能。
一种基于Arnold渲染器的文件生成方法,包括以下步骤:
S1.通过基于Arnold渲染器的编程接口实现的信息获取模块获取目前有的材质节点,遍历各个节点,通过所述编程接口获取每个节点上各个属性的类型与默认值,并存入本***的数据结构中,并将相关信息传递至所述文件写出模块;
S2.文件写出模块将从Arnold渲染器获取到的数据针对MaterialX文件定义进行数据适配;
S3. 将本***中与MaterialX文件中适配的各部分数据通过MaterialX库的程序接口写出,并保存至MaterialX的格式,,形成node definition文件。
优选的,步骤S2所述的适配包括类型名称对应适配和数据精度调整。
本发明的有益效果是:本***利用Arnold渲染器提供的编程接口,使用类似DCC软件接口的模式制作;通过加载shader动态库并利用接口遍历其中所包含的材质节点,获取必要信息,同时使用MaterialX提供的编程接口将这些信息输出成MaterialX的格式,形成node definition文件;该***具有较好的通用性,可适用于任何第三方开发的材质节点,生成格式统一的node definition文件格式;另外,通过拓展,还可以用本***来生成其他类型Arnold节点信息以用作参考。
具体实施方式
node definition文件生成***,包括Arnold渲染器的编程接口和MaterialX库的程序接口;
还包括信息获取模块与文件写出模块,信息获取模块与文件写出模块分别依赖于Arnold渲染器的编程接口和MaterialX库的程序接口实现数据的读写;
信息获取模块通过Arnold渲染器的编程接口加载动态库,遍历其中所包含的shader节点及其参数,获取相关信息并传递给文件写出模块;该模块可以适用于所有shader节点,包括一些第三方开发的内容,甚至可以拓展针对其他类型节点信息获取的工程,具有较好的通用性与可拓展性;
文件写出模块将信息获取模块传递的内容按照MaterialX的格式进行整理分类,然后通过对应的写出接口将这些信息写出至Node Definition文件,该模块只对写出文件负责,只要信息获取层提供同一格式的内容就可以输出对应文件,这样的设计可以方便之后加入其他渲染器的支持。
具体的,Arnold渲染器的编程接口包括若干与Arnold渲染器进行交互的功能,若干功能包括数据查询、数据生成和选项设置。
具体的,MaterialX库的程序接口用于提供文件读写的功能。
node definition文件生成方法,包括以下步骤:
S1.通过基于Arnold渲染器的编程接口实现的信息获取模块获取目前有的材质节点,遍历各个节点,通过编程接口获取每个节点上各个属性的类型与默认值,并存入本***的数据结构中,并将相关信息传递至文件写出模块;
S2.文件写出模块将从Arnold渲染器获取到的数据针对MaterialX文件定义进行数据适配;
S3. 将本***中与MaterialX文件中适配的各部分数据通过MaterialX库的程序接口写出,并保存至MaterialX的格式,形成node definition文件。
具体的,步骤S2的适配包括类型名称对应适配和数据精度调整。
本***利用Arnold渲染器提供的编程接口,使用类似DCC软件接口的模式制作;通过加载shader动态库并利用接口遍历其中所包含的材质节点,获取必要信息,同时使用MaterialX提供的编程接口将这些信息输出成MaterialX的格式,形成node definition文件;该***具有较好的通用性,可适用于任何第三方开发的材质节点,生成格式统一的nodedefinition文件格式;另外,通过拓展,还可以用本***来生成其他类型Arnold节点信息以用作参考。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,尽管参照前述实施例对本发明进行了详细的说明,对于本领域的技术人员来说,其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (5)
1.一种基于Arnold渲染器的文件生成***,包括Arnold渲染器的编程接口和MaterialX库的程序接口,其特征在于,包括信息获取模块与文件写出模块,所述信息获取模块与所述文件写出模块分别依赖于所述Arnold渲染器的编程接口和所述MaterialX库的程序接口实现数据的读写;
所述信息获取模块通过所述Arnold渲染器的编程接口加载动态库,遍历其中所包含的shader节点及其参数,获取相关信息并传递给所述文件写出模块;所述文件写出模块将所述信息获取模块传递的内容按照MaterialX的格式进行整理分类,然后通过对应的写出接口将这些信息写出至Node Definition文件。
2.根据权利要求1所述的一种基于Arnold渲染器的文件生成***,其特征在于,所述Arnold渲染器的编程接口包括若干与所述Arnold渲染器进行交互的功能,若干所述功能包括数据查询、数据生成和选项设置。
3.根据权利要求1所述的一种基于Arnold渲染器的文件生成***,其特征在于,所述MaterialX库的程序接口用于提供文件读写的功能。
4.一种基于Arnold渲染器的文件生成方法,其特征在于,包括以下步骤:
S1.通过基于Arnold渲染器的编程接口实现的信息获取模块获取目前有的材质节点,遍历各个节点,通过所述编程接口获取每个节点上各个属性的类型与默认值,并存入本***的数据结构中,并将相关信息传递至文件写出模块;
S2.文件写出模块将从Arnold渲染器获取到的数据针对MaterialX文件定义进行数据适配;
S3.将本***中与MaterialX文件中适配的各部分数据通过MaterialX库的程序接口写出,并保存至MaterialX的格式,形成node definition文件。
5.根据权利要求4所述的一种基于Arnold渲染器的文件生成方法,其特征在于,步骤S2所述的适配包括类型名称对应适配和数据精度调整。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911328273.8A CN111198680B (zh) | 2019-12-20 | 2019-12-20 | 一种基于 Arnold 渲染器的文件生成***及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911328273.8A CN111198680B (zh) | 2019-12-20 | 2019-12-20 | 一种基于 Arnold 渲染器的文件生成***及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111198680A CN111198680A (zh) | 2020-05-26 |
CN111198680B true CN111198680B (zh) | 2020-12-11 |
Family
ID=70746329
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911328273.8A Active CN111198680B (zh) | 2019-12-20 | 2019-12-20 | 一种基于 Arnold 渲染器的文件生成***及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111198680B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108287707A (zh) * | 2017-09-13 | 2018-07-17 | 深圳壹账通智能科技有限公司 | Jsx文件生成方法、装置、存储介质和计算机设备 |
CN108876764A (zh) * | 2018-05-21 | 2018-11-23 | 北京旷视科技有限公司 | 渲染图像获取方法、装置、***和存储介质 |
CN108874373A (zh) * | 2017-05-12 | 2018-11-23 | 腾讯科技(深圳)有限公司 | 向网页内***信息的方法及装置、显示终端及存储介质 |
CN109343774A (zh) * | 2018-10-29 | 2019-02-15 | 广东明星创意动画有限公司 | 一种快速文件预处理渲染*** |
CN109377543A (zh) * | 2018-10-29 | 2019-02-22 | 广东明星创意动画有限公司 | 一种快速创建材质连接的方法 |
CN109710227A (zh) * | 2018-11-07 | 2019-05-03 | 苏州蜗牛数字科技股份有限公司 | 一种纹理图集调度的方法 |
CN109725893A (zh) * | 2018-05-17 | 2019-05-07 | 平安普惠企业管理有限公司 | 代码生成方法、设备、装置及计算机可读存储介质 |
CN109885291A (zh) * | 2019-01-25 | 2019-06-14 | 深圳市元征科技股份有限公司 | 一种代码自动生成方法及代码自动生成器 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6549943B1 (en) * | 1999-06-16 | 2003-04-15 | Cisco Technology, Inc. | Network management using abstract device descriptions |
CN108133445A (zh) * | 2016-12-01 | 2018-06-08 | 钦州市晶通科技有限公司 | 一种扩散映射置乱与混沌***组合的图像加密方法 |
US20180315101A1 (en) * | 2017-04-29 | 2018-11-01 | Yogesh Ramdas KADAM | System and method for optimizing revenue generation process |
CN108840886A (zh) * | 2018-06-22 | 2018-11-20 | 南京工业大学 | 一种铂配合物蓝光材料以及有机发光器件 |
-
2019
- 2019-12-20 CN CN201911328273.8A patent/CN111198680B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108874373A (zh) * | 2017-05-12 | 2018-11-23 | 腾讯科技(深圳)有限公司 | 向网页内***信息的方法及装置、显示终端及存储介质 |
CN108287707A (zh) * | 2017-09-13 | 2018-07-17 | 深圳壹账通智能科技有限公司 | Jsx文件生成方法、装置、存储介质和计算机设备 |
CN109725893A (zh) * | 2018-05-17 | 2019-05-07 | 平安普惠企业管理有限公司 | 代码生成方法、设备、装置及计算机可读存储介质 |
CN108876764A (zh) * | 2018-05-21 | 2018-11-23 | 北京旷视科技有限公司 | 渲染图像获取方法、装置、***和存储介质 |
CN109343774A (zh) * | 2018-10-29 | 2019-02-15 | 广东明星创意动画有限公司 | 一种快速文件预处理渲染*** |
CN109377543A (zh) * | 2018-10-29 | 2019-02-22 | 广东明星创意动画有限公司 | 一种快速创建材质连接的方法 |
CN109710227A (zh) * | 2018-11-07 | 2019-05-03 | 苏州蜗牛数字科技股份有限公司 | 一种纹理图集调度的方法 |
CN109885291A (zh) * | 2019-01-25 | 2019-06-14 | 深圳市元征科技股份有限公司 | 一种代码自动生成方法及代码自动生成器 |
Non-Patent Citations (1)
Title |
---|
MAYA渲染mantel ray材质球 mia_material_x;霍鹏旭;《https://blog.csdn.net/chongshangdiao/article/details/6263793/》;20110321;第1-3页 * |
Also Published As
Publication number | Publication date |
---|---|
CN111198680A (zh) | 2020-05-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US5745897A (en) | Method and system for compiling management information base specifications | |
CN105242882B (zh) | 时序数据的帧存储方法及装置、时序数据查询方法及装置 | |
CN104035754A (zh) | 一种基于xml的自定义代码生成方法及生成器 | |
CN103714129A (zh) | 基于条件规则的动态数据结构和关系的构建装置和构建方法 | |
CN105824849A (zh) | 一种数据导入方法及适配器 | |
US20020091705A1 (en) | Object integrated management system | |
CN109634682A (zh) | 应用程序的配置文件更新方法及装置 | |
CN111984796B (zh) | 一种基于规范知识图谱ifc模型的自动合规性检查方法 | |
CN105303465B (zh) | 基于cim模型的树形视图定义及展示方法 | |
CN111198680B (zh) | 一种基于 Arnold 渲染器的文件生成***及方法 | |
CN111078213B (zh) | 一种代码生成方法及代码生成装置 | |
CN104281604B (zh) | 生成Targetlink数据字典分层树的方法和*** | |
CN110069812B (zh) | 用于机器人路径轨迹点属性的配置方法、***及存储介质 | |
CN106330519B (zh) | 一种网管***间报文的通信方法及*** | |
CN114048352B (zh) | Xml文件转换不定长结构体的方法 | |
CN111752941A (zh) | 一种数据存储、访问方法、装置、服务器及存储介质 | |
CN114968196A (zh) | 基于codesys软件的开发平台架构 | |
CN114895875A (zh) | 一种零代码可视化信息***元数据的生产应用方法及*** | |
CA2607495A1 (en) | System and method for efficient hosting of wireless applications by encoding application component definitions | |
CN111144084B (zh) | 文章模板的配置方法与配置***及生成文章的方法与*** | |
CN116661768B (zh) | 基于知识图谱的页面代码生成方法、***、装置和介质 | |
CN111930718B (zh) | 配置管理数据库的节点调整方法及装置 | |
US11496549B2 (en) | Heterogeneous execution engines in a network centric process control system | |
CN115861483A (zh) | 一种设计图标转化为字体图标的方法、装置、设备及介质 | |
CN110597928A (zh) | 一种动态字段实现级联和引用关系的方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
CB02 | Change of applicant information | ||
CB02 | Change of applicant information |
Address after: 3-7 / F, building 3, science and technology innovation complex a, Xincheng science and Technology Park, 8 Bailongjiang East Street, Jianye District, Nanjing City, Jiangsu Province 210000 Applicant after: Jiangsu Yuanli Digital Technology Co.,Ltd. Address before: 210000 No.8, Bailongjiang East Street, Jianye District, Nanjing City, Jiangsu Province Applicant before: Jiangsu force animation production Limited by Share Ltd. |
|
GR01 | Patent grant | ||
GR01 | Patent grant |