PageSourceSearch

https://docs.rapidpipeline.com/assets/js/2a0b5691.7ad805df.js

js rapidpipeline.com collected 2026-10-02 06:23:26 UTC 23,102 bytes, 1 lines download raw bytes

1"use strict";(self.webpackChunkrapidcompact_docs=self.webpackChunkrapidcompact_docs||[]).push([[5817],{15680:(e,a,n)=>{n.d(a,{xA:()=>d,yg:()=>u});var t=n(96540);function o(e,a,n){return a in e?Object.defineProperty(e,a,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[a]=n,e}function l(e,a){var n=Object.keys(e);if(Object.getOwnPropertySymbols){var t=Object.getOwnPropertySymbols(e);a&&(t=t.filter((function(a){return Object.getOwnPropertyDescriptor(e,a).enumerable}))),n.push.apply(n,t)}return n}function i(e){for(var a=1;a<arguments.length;a++){var n=null!=arguments[a]?arguments[a]:{};a%2?l(Object(n),!0).forEach((function(a){o(e,a,n[a])})):Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(n)):l(Object(n)).forEach((function(a){Object.defineProperty(e,a,Object.getOwnPropertyDescriptor(n,a))}))}return e}function r(e,a){if(null==e)return{};var n,t,o=function(e,a){if(null==e)return{};var n,t,o={},l=Object.keys(e);for(t=0;t<l.length;t++)n=l[t],a.indexOf(n)>=0||(o[n]=e[n]);return o}(e,a);if(Object.getOwnPropertySymbols){var l=Object.getOwnPropertySymbols(e);for(t=0;t<l.length;t++)n=l[t],a.indexOf(n)>=0||Object.prototype.propertyIsEnumerable.call(e,n)&&(o[n]=e[n])}return o}var s=t.createContext({}),p=function(e){var a=t.useContext(s),n=a;return e&&(n="function"==typeof e?e(a):i(i({},a),e)),n},d=function(e){var a=p(e.components);return t.createElement(s.Provider,{value:a},e.children)},c="mdxType",m={inlineCode:"code",wrapper:function(e){var a=e.children;return t.createElement(t.Fragment,{},a)}},g=t.forwardRef((function(e,a){var n=e.components,o=e.mdxType,l=e.originalType,s=e.parentName,d=r(e,["components","mdxType","originalType","parentName"]),c=p(n),g=o,u=c["".concat(s,".").concat(g)]||c[g]||m[g]||l;return n?t.createElement(u,i(i({ref:a},d),{},{components:n})):t.createElement(u,i({ref:a},d))}));function u(e,a){var n=arguments,o=a&&a.mdxType;if("string"==typeof e||o){var l=n.length,i=new Array(l);i[0]=g;var r={};for(var s in a)hasOwnProperty.call(a,s)&&(r[s]=a[s]);r.originalType=e,r[c]="string"==typeof e?e:o,i[1]=r;for(var p=2;p<l;p++)i[p]=n[p];return t.createElement.apply(null,i)}return t.createElement.apply(null,n)}g.displayName="MDXCreateElement"},78825:(e,a,n)=>{n.r(a),n.d(a,{assets:()=>s,contentTitle:()=>i,default:()=>m,frontMatter:()=>l,metadata:()=>r,toc:()=>p});var t=n(58168),o=(n(96540),n(15680));const l={title:"QC Tools CLI",slug:"qc-tools-cli"},i=void 0,r={unversionedId:"componentDocs/QcTools/cli",id:"componentDocs/QcTools/cli",title:"QC Tools CLI",description:"RapidPipeline QC Tools logo",source:"@site/docs/componentDocs/QcTools/02-cli.md",sourceDirName:"componentDocs/QcTools",slug:"/componentDocs/QcTools/qc-tools-cli",permalink:"/docs/componentDocs/QcTools/qc-tools-cli",draft:!1,tags:[],version:"current",sidebarPosition:2,frontMatter:{title:"QC Tools CLI",slug:"qc-tools-cli"},sidebar:"componentSidebar3DP",previous:{title:"QC Tools Overview",permalink:"/docs/componentDocs/QcTools/qc-tools-overview"}},s={},p=[{value:"RapidPipeline QC Tools",id:"rapidpipeline-qc-tools",level:2},{value:"System Requirements",id:"system-requirements",level:2},{value:"Installation:",id:"installation",level:2},{value:"Basic Usage:",id:"basic-usage",level:2},{value:"rpqc Render:",id:"rpqc-render",level:4},{value:"rpqc Comparison:",id:"rpqc-comparison",level:4},{value:"Command line arguments",id:"command-line-arguments",level:2},{value:"rpqc Render:",id:"rpqc-render-1",level:3},{value:"rpqc Comparison:",id:"rpqc-comparison-1",level:3},{value:"HTML page",id:"html-page",level:2},{value:"Further information",id:"further-information",level:2},{value:"rpqc Render Input files",id:"rpqc-render-input-files",level:3},{value:"Output files",id:"output-files",level:3},{value:"Metadata",id:"metadata",level:3},{value:"Example Files",id:"example-files",level:2},{value:"batch_scene_data.json",id:"batch_scene_datajson",level:3},{value:"Example 1:",id:"example-1",level:4},{value:"Example 2:",id:"example-2",level:4},{value:"qctools_batch_data.json",id:"qctools_batch_datajson",level:3},{value:"rpdpSceneMetadata.json",id:"rpdpscenemetadatajson",level:3},{value:"qctools_metadata.json",id:"qctools_metadatajson",level:3}],d={toc:p},c="wrapper";
1function m(e){let{components:a,...l}=e;return(0,o.yg)(c,(0,t.A)({},d,l,{components:a,mdxType:"MDXLayout"}),(0,o.yg)("p",null,(0,o.yg)("img",{alt:"RapidPipeline QC Tools logo",src:n(96510).A,width:"452",height:"153"})),(0,o.yg)("p",null,"These settings refer to the command-line interface (CLI) version of ",(0,o.yg)("strong",{parentName:"p"},"RapidPipeline QC Tools")," which is used for batch processing on local hardware or a virtual machine or via AWS."),(0,o.yg)("admonition",{type:"info"},(0,o.yg)("p",{parentName:"admonition"},"The RapidPipeline DCC Importer CLI requires an Enterprise or Custom Plan: ",(0,o.yg)("a",{parentName:"p",href:"https://rapidpipeline.com/en/pricing/"},"https://rapidpipeline.com/en/pricing/"),".")),(0,o.yg)("h2",{id:"rapidpipeline-qc-tools"},"RapidPipeline QC Tools"),(0,o.yg)("ul",null,(0,o.yg)("li",{parentName:"ul"},"RapidPipeline QC Tools offers a quality assurance / quality control system to compare different sets of renders."),(0,o.yg)("li",{parentName:"ul"},"Renderings can either be generated by the application itself (here called ",(0,o.yg)("em",{parentName:"li"},"rpqc render"),") or provided by the user as pairs of images, regardless of their source render engine or DCC tool."),(0,o.yg)("li",{parentName:"ul"},"Currently supported files for rendering generation of the tool are 3ds Max files with VRay shader or any types of 3D files supported by the RapidPipeline 3D Processor."),(0,o.yg)("li",{parentName:"ul"},"The renderings or pairs of images will then be compared (here called ",(0,o.yg)("em",{parentName:"li"},"rpqc comparison"),") and a html page will be generated, with an overview of processed comparisons as well as a similarity score."),(0,o.yg)("li",{parentName:"ul"},"The comparison of the images is performed on a pixel-by-pixel basis, showcasing areas where differences are more prevalent.")),(0,o.yg)("h2",{id:"system-requirements"},"System Requirements"),(0,o.yg)("ul",null,(0,o.yg)("li",{parentName:"ul"},"Intel or AMD x64 processors;"),(0,o.yg)("li",{parentName:"ul"},"Python 3.9 and up;"),(0,o.yg)("li",{parentName:"ul"},"Windows 10 and up, Windows Server 2016 and up;"),(0,o.yg)("li",{parentName:"ul"},"16Gb Ram minimum;"),(0,o.yg)("li",{parentName:"ul"},"3dsMax (Optional):",(0,o.yg)("ul",{parentName:"li"},(0,o.yg)("li",{parentName:"ul"},"Supported Versions: 2023 and 2024, any update pack;"),(0,o.yg)("li",{parentName:"ul"},"Recommended Version: 2023.3;"),(0,o.yg)("li",{parentName:"ul"},"Unsupported Versions: 2022 or older."))),(0,o.yg)("li",{parentName:"ul"},"V-Ray (Optional):",(0,o.yg)("ul",{parentName:"li"},(0,o.yg)("li",{parentName:"ul"},"Supported Versions: V-Ray 5.2.3 and up;"),(0,o.yg)("li",{parentName:"ul"},"Recommended Version: VRay 6 and up, on the most recent update."),(0,o.yg)("li",{parentName:"ul"},"Unsupported Versions: Versions older than 5.2.3, due to recent changes with Baking Elements."))),(0,o.yg)("li",{parentName:"ul"},"RapidPipeline Processor:",(0,o.yg)("ul",{parentName:"li"},(0,o.yg)("li",{parentName:"ul"},"Version v6.6.0 and up is recommended.")))),(0,o.yg)("p",null,(0,o.yg)("strong",{parentName:"p"},"NOTE:")),(0,o.yg)("ul",null,(0,o.yg)("li",{parentName:"ul"},"V-Ray and 3dsMax are optional dependencies, only required if ",(0,o.yg)("em",{parentName:"li"},"rendering")," of 3dsMax scenes with VRay shaders is necessary."),(0,o.yg)("li",{parentName:"ul"},"Rendering of files created by older versions of both V-Ray and 3dsMax is supported."),(0,o.yg)("li",{parentName:"ul"},"Visual differences might occur, in relation to the application version they were originally created on, due to changes/updates to 3dsMax and/or V-Ray.")),(0,o.yg)("h2",{id:"installation"},"Installation:"),(0,o.yg)("p",null,"Install the Python dependencies with the following commands:"),(0,o.yg)("pre",null,(0,o.yg)("code",{parentName:"pre"},"cd [QC Tools installation folder]\npython .\\install_requirements.py [-h] [--executablePath EXECUTABLEPATH] [--logLevel {0,1,2,3,4}] [--ignoreDCC]\n")),(0,o.yg)("ul",null,(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"-h, --help"),(0,o.yg)("ul",{parentName:"li"},(0,o.yg)("li",{parentName:"ul"},"Displays a help message and exits the program."))),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"--executablePath EXECUTABLEPATH"),(0,o.yg)("ul",{parentName:"li"},(0,o.yg)("li",{parentName:"ul"},"Override the DCC executable path. Recommended when multiple versions of a DCC are installed."))),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"}
1,"--logLevel {0,1,2,3,4}"),(0,o.yg)("ul",{parentName:"li"},(0,o.yg)("li",{parentName:"ul"},"Verbose level for logging messages from 0 (critical) to 4 (debug). For developers the recommended level is 4."))),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"--ignoreDCC"),(0,o.yg)("ul",{parentName:"li"},(0,o.yg)("li",{parentName:"ul"},"Optional, only installs requirements for the main Python installation.")))),(0,o.yg)("h2",{id:"basic-usage"},"Basic Usage:"),(0,o.yg)("h4",{id:"rpqc-render"},"rpqc Render:"),(0,o.yg)("p",null,"To run this tool, you need to meet all requirements for the regular DCCImporter."),(0,o.yg)("p",null,"If 3d scenes for rendering are provided (",(0,o.yg)("em",{parentName:"p"},"rpqc render"),") use the following command to render images: "),(0,o.yg)("pre",null,(0,o.yg)("code",{parentName:"pre"},'cd "...\\QC_Tools\\env\\Scripts" && .\\activate.bat && .\\python.exe "...\\rpqc_render.py --batchData <Output path>\\batch_scene_data.json -o <Output path>\n')),(0,o.yg)("p",null,"QC Tools needs a batch_scene_data.json file to Render 3d Assets (see ",(0,o.yg)("a",{parentName:"p",href:"#batch_scene_datajson"},"Example"),")."),(0,o.yg)("p",null,"batch_scene_data.json is created by the DCCImporter and describes the following attributes of a scene:"),(0,o.yg)("ul",null,(0,o.yg)("li",{parentName:"ul"},"renderEngine: engine to be used for rendering images (currently QC Tools supports MaxVRay and rpdx)"),(0,o.yg)("li",{parentName:"ul"},"originalScene: path to the original asset"),(0,o.yg)("li",{parentName:"ul"},"comparisonScene: path to the comparison asset"),(0,o.yg)("li",{parentName:"ul"},"metadata: path to an optional Metadata file"),(0,o.yg)("li",{parentName:"ul"},"assetRoot: Root of Original file"),(0,o.yg)("li",{parentName:"ul"},"outputFolder: Path to renderings of original and comparison images"),(0,o.yg)("li",{parentName:"ul"},"log: path to optional log file")),(0,o.yg)("h4",{id:"rpqc-comparison"},"rpqc Comparison:"),(0,o.yg)("p",null,"To use QC Tools with rendered Images (",(0,o.yg)("em",{parentName:"p"},"rpqc comparison"),") use the following command: "),(0,o.yg)("pre",null,(0,o.yg)("code",{parentName:"pre"},'cd "...\\QC_Tools\\env\\Scripts" && .\\activate.bat && .\\python.exe "...\\rpqc_comparison.py -i <Input path>\\qctools_batch_data.json -o <Output path>\n')),(0,o.yg)("p",null,"If QC Tools should be executed with rendered Images provided there needs to be a qctools_batch_data.json (see ",(0,o.yg)("a",{parentName:"p",href:"#qctools_batch_datajson"},"Example"),") file with the following values:"),(0,o.yg)("ul",null,(0,o.yg)("li",{parentName:"ul"},'inputFolder: Path to renderings of original and comparison images (needs to have folder labeled "original" and "comparison")'),(0,o.yg)("li",{parentName:"ul"},"metadata: path to an optional metadata file"),(0,o.yg)("li",{parentName:"ul"},"log: path to an optional log file")),(0,o.yg)("p",null,'The images in "original" and "comparison" need to have matching file -names and -types to be compared to another.'),(0,o.yg)("h2",{id:"command-line-arguments"},"Command line arguments"),(0,o.yg)("h3",{id:"rpqc-render-1"},"rpqc Render:"),(0,o.yg)("ul",null,(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"--batchData"),": path to batch_scene_data.json (see above) "),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"-o / --outputFolder"),": Output folder for rendered images."),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"--originalFormat"),": The given input format for QC Tools (all, V-Ray, glTF)."),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"--comparisonFormat"),": The given input format for QC Tools (all, glTF, usdz)."),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"--metadata"),": Path to json Metadata file (see more information below)."),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"--assetRoot"),": Root folder for original scene assets."),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"--environmentMap"),": Environment Map for DCC renderings."),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"--executablePath"),": Override the DCC executable path. Recommended when multiple versions of a DCC are installed."),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"}
1,"--keepHair"),": If not provided, deletes Hair & Fur modifiers in 3dsMax scenes."),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"--keepdisplacement"),": If not provided, delets VrayDisplacement modifiers in 3dsMax scenes."),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"-s / --rpdpSettingsFile"),": JSon settings file for DCC Importer."),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"--camCount (1 - 6, default 1)"),":  Camera count for renderings. "),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"--resolution (default 500)"),":  Render resolution in px for QA-Site."),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},'--renderengine ("rpdx"/ "maxvray, default "rpdx")'),": Render engine used for rendering process.")),(0,o.yg)("h3",{id:"rpqc-comparison-1"},"rpqc Comparison:"),(0,o.yg)("ul",null,(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"-i / --input"),": Root input folder for batch of scene files. Alternatively root to qctools_batch_data.json (see above)"),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"-o / --output"),": Output folder for QA Page."),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"--imageCount"),": Amount of camera angles used for the QA-Site."),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"-a / --approveThreshold"),": (default 13) Maximum diff value at which an asset gets labeled 'RPQC approved'."),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"-d / --displayApproved")," Determines if an approved scene gets displayed on the created html page."),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"--csvExport"),": Determines if a csv file with all stats is created."),(0,o.yg)("li",{parentName:"ul"},(0,o.yg)("inlineCode",{parentName:"li"},"--assetIDFilterOff"),": Turns off filter of assets with the same assetID.")),(0,o.yg)("h2",{id:"html-page"},"HTML page"),(0,o.yg)("p",null,"QC Tools creates htmls pages as part of the output files under ",(0,o.yg)("inlineCode",{parentName:"p"},"<outputPath>\\QCTools\\Report\\qa-page_*_*_0.html"),". "),(0,o.yg)("p",null,"The QC html page (report) consists of individual areas for each asset consisting of the original renderings, comparison renderings as well as a difference image showing a pixel-based comparison. "),(0,o.yg)("p",null,"It also gives general information about the scene as well as a difference score representing the visual differences between the given original and comparison images. "),(0,o.yg)("p",null,'If there has been errors or warnings during the run of the DCC Importer it will also display them per Asset on the report. If there was an error with during the DCC Importer process it will be indicated with the asset displayed on a red background. The report also automatically classifies Assets as fail or passed in relation to the given "approveThreshold" and if there was an error in running the page.'),(0,o.yg)("p",null,"The report displays a graph chart of those classifications and it is possible to sort and filter the assets based on their scoring and the given Metadata.\nIf there was a large number of assets processed with QC Tools the reports might be split in several pages and a link to the other pages will be provided on top of the report. "),(0,o.yg)("p",null,"In the top menu of the report there will be options to sort and filter the selection of assets on the page as well as an export option to .csv for all information displayed on the site.\nBy clicking on the individual images there is also a slider view to better identify differences of images."),(0,o.yg)("h2",{id:"further-information"},"Further information"),(0,o.yg)("h3",{id:"rpqc-render-input-files"},"rpqc Render Input files"),(0,o.yg)("p",null,'To support a 3ds max scene as the original 3d model the input folder needs the .max scene together with the dependent textures.\nThere can also be an optional .json file in the same sub-folder as the .max scene named "rpdpSceneMetadata.json". For more information on this see "Metadata".\nThe path to both files need to be specified in the batch_scene_data.json file.'),(0,o.yg)("h3",{id:"output-files"},"Output files"),(0,o.yg)("p",null,"The given outputFolder has to be the Folder where the files for the image comparison will be located. These files need to be located in subfolders named after the individual scenes that should be compared by QC Tools."),(0,o.yg)("p",null,'There are multiple files created by QC Tools depen
1ding on the chosen format options and given command arguments.\nIn general, it will create a QC Tools folder in the individual scene folders of the given output path as well as one QC Tools folder directly in the output path.\nThe later one contains the html page of QC Tools that gives an overview over all processed scenes with renderings, difference scores as well as comparison images for further information see "HTML page".\nThere is also a qc.zip file that contains the html page as well as all files needed to display the page that makes it easy to share the html page directly without worrying about dependent files.\nIf the given assets provided an asset ID in the Metadata file than all Assets with the same ID will be ziped in the output folder except for the one with the best score, which will be the only scene of that ID displayed in the QC Tools html report.'),(0,o.yg)("h3",{id:"metadata"},"Metadata"),(0,o.yg)("p",null,"If ",(0,o.yg)("em",{parentName:"p"},"rpqc render"),' is run via the RapidPipeline DCC Importer there is the possibility to supply an optional metadata file.\nThis metadata is a .json file given with each input scene as part of the input directory. The file needs to be named "rpdpSceneMetadata.json" and be in the same subfolder as the .max file of the input scenes. (see ',(0,o.yg)("a",{parentName:"p",href:"#rpdpscenemetadatajson"},"Example"),")\nDefault keys for metadata are AssetID and AssetLabel and will be included in the QC Tools page with the ability to filter and sort the given Assetbatch."),(0,o.yg)("p",null,'When running RapidPipeline QC Tools without using the DCC Importer the Metadata file can be supplied per scene as a json file called "qctools_metadata.json". (see ',(0,o.yg)("a",{parentName:"p",href:"#qctools_metadatajson"},"Example"),")\nPath to a Metadata file needs to be specified in batch_scene_data.json (",(0,o.yg)("em",{parentName:"p"},"rpqc render"),") or qctools_batch_data.json (",(0,o.yg)("em",{parentName:"p"},"rpqc comparison"),') with the key "metadata".'),(0,o.yg)("h2",{id:"example-files"},"Example Files"),(0,o.yg)("h3",{id:"batch_scene_datajson"},"batch_scene_data.json"),(0,o.yg)("h4",{id:"example-1"},"Example 1:"),(0,o.yg)("pre",null,(0,o.yg)("code",{parentName:"pre"},'{\n    "scenes": [\n        {\n            "renderEngine": "MaxVRay",\n            "originalScene": "<path>\\\\scene1.max",\n            "comparisonScene": "<path>\\\\scene2.max",\n            "metadata": "<path>\\\\scene_metadata.json",\n            "assetRoot": "<path to scene1>",\n            "outputFolder": "<path>\\\\scene\\\\QCTools\\\\VRay_glTF",\n            "log": "<path>\\\\sceneLogFile_xxx.log"\n        }\n    ]\n}\n')),(0,o.yg)("ul",null,(0,o.yg)("li",{parentName:"ul"},"Batch file for a scene rendered with V-Ray in 3ds max. (as supplied by the RapidPipeline DCC Importer)")),(0,o.yg)("h4",{id:"example-2"},"Example 2:"),(0,o.yg)("pre",null,(0,o.yg)("code",{parentName:"pre"},'{\n    "scenes": [\n    {\n        "renderEngine": "rpdx",\n        "originalScene": "<path>\\\\scene.gltf",\n        "comparisonScene": "<path>\\\\scene.usdz",\n        "outputFolder": "<path>\\\\scene\\\\QCTools\\\\VRay_glTF"\n    },\n    {\n        "renderEngine": "rpdx",\n        "originalScene": "<path>\\\\scene.gltf",\n        "comparisonScene": "<path>\\\\scene.usdz",\n        "outputFolder": "<path>\\\\scene\\\\QCTools\\\\VRay_glTF"\n    }\n    ]\n}\n')),(0,o.yg)("ul",null,(0,o.yg)("li",{parentName:"ul"},'Batch file for two scenes rendered with the RapidPipeline Processor ("rpdx")')),(0,o.yg)("h3",{id:"qctools_batch_datajson"},"qctools_batch_data.json"),(0,o.yg)("pre",null,(0,o.yg)("code",{parentName:"pre"},'{\n    "scenes": [\n        {\n            "inputFolder": "<path>\\\\QCTools\\\\VRay_glTF",\n            "metadata": "<path>\\\\QCTools\\\\VRay_glTF\\\\qctools_metadata.json",\n            "log": "<path>\\\\sceneLogFile_xxx.log"\n        }\n    ]\n}\n')),(0,o.yg)("ul",null,(0,o.yg)("li",{parentName:"ul"},"Batch file for QC Tools with supplied renderings in inputFolder. (",(0,o.yg)("em",{parentName:"li"},"rpqc comparison"),")")),(0,o.yg)("h3",{id:"rpdpscenemetadatajson"},"rpdpSceneMetadata.json"),(0,o.yg)("pre",null,(0,o.yg)("code",{parentName:"pre"}
1,'{\n    "id": "5503412312314",\n\n    "label": "TEST#|123",\n\n    "customMetadata":\n    {\n        "some_additional_info": "12345"\n    }\n    \n}\n')),(0,o.yg)("ul",null,(0,o.yg)("li",{parentName:"ul"},"Metadata file that can be supplied to the DCC Importer alongside the input .max scene")),(0,o.yg)("h3",{id:"qctools_metadatajson"},"qctools_metadata.json"),(0,o.yg)("pre",null,(0,o.yg)("code",{parentName:"pre"},'{\n    "scene": "scene_name",\n    "id": "12345",\n    "label": "scene_label",\n    "inputMetadata": {\n        "customMetadata": {\n            "some_additional_info": "scene_info"\n        }\n    }\n}\n')),(0,o.yg)("ul",null,(0,o.yg)("li",{parentName:"ul"},"Metadata file that can be specified in the batch_scene_data.json (",(0,o.yg)("em",{parentName:"li"},"rpqc render"),") or qctools_batch_data.json (",(0,o.yg)("em",{parentName:"li"},"rpqc comparison"),")")))}m.isMDXComponent=!0},96510:(e,a,n)=>{n.d(a,{A:()=>t});const t=n.p+"assets/images/RapidPipeline_QC_Tools-17604ebde26829c972a93c9bc22ac331.png"}}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.