diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..3299a3f --- /dev/null +++ b/.gitignore @@ -0,0 +1,4 @@ +# Ignore the assets folder +/assets/ +/renderformer/ +PLAN.md \ No newline at end of file diff --git a/README.md b/README.md index e2588d4..fddc59f 100644 --- a/README.md +++ b/README.md @@ -70,9 +70,9 @@ For video, the workflow is similar. You would use a `RenderFormer Camera Target` --- -### 🚀 Advanced Usage: Building Complex Scenes & Animations +### 🚀 Advanced Usage: Building Complex Scenes & Multi-Light Animations -For more complex projects, you can combine multiple meshes and create camera animations. The `ph_renderformer_advanced_01.json` workflow demonstrates this by building a scene with several objects and animating the camera. +For more complex projects, you can combine multiple meshes and create sophisticated camera and lighting animations. The `ph_renderformer_advanced_01.json` workflow demonstrates this by building a scene with several object groups and animating multiple lights simultaneously. ```mermaid graph TD @@ -82,28 +82,34 @@ graph TD subgraph "Step 2: Define Scene Elements" subgraph "Compose Meshes" - B1["Mesh 1 (Main Object)"] --> C["Mesh Combine"] - B2["Mesh 2 (Fox)"] --> C - B3["Mesh 3 (Spheres)"] --> C - B4["Mesh 4 (Background Walls)"] --> C + B1["Mesh Group 1 (e.g., Characters)"] --> C1["Mesh Combine 1"] + B2["Mesh Group 2 (e.g., Environment)"] --> C2["Mesh Combine 2"] + C1 --> C3["Final Mesh Combine"] + C2 --> C3 end subgraph "Animate Camera" D1["RenderFormer Camera (Start)"] --> D2["RenderFormer Camera Target (End)"] end - E["RenderFormer Lighting"] + subgraph "Animate Multiple Lights" + L1_Start["Light 1 (Start)"] --> L1_Target["Light 1 Target"] + L2_Start["Light 2 (Start)"] --> L2_Target["Light 2 Target"] + L1_Target --> LC["Lighting Combine"] + L2_Target --> LC + end end subgraph "Step 3: Build Scene Sequence" - C --> F["RenderFormer Scene Builder"] - D2 -- CAMERA_SEQUENCE --> F - E --> F + A --> F["RenderFormer Scene Builder"] + C3 -- MESH --> F + D1 -- required CAMERA --> F + D2 -- optional CAMERA_SEQUENCE --> F + LC -- LIGHTING & LIGHTING_SEQUENCE --> F end subgraph "Step 4: Render (Sample)" - A --> G["RenderFormer Sampler"] - F -- SCENE_SEQUENCE --> G + F -- SCENE_SEQUENCE --> G["RenderFormer Sampler"] end subgraph "Step 5: Create & Save Video" @@ -114,28 +120,33 @@ graph TD style A fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 style B1 fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 style B2 fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 - style B3 fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 - style B4 fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 - style C fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 + style C1 fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 + style C2 fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 + style C3 fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 style D1 fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 style D2 fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 - style E fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 + style L1_Start fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 + style L2_Start fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 + style L1_Target fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 + style L2_Target fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 + style LC fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 style F fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 style G fill:#FDC501,stroke:#111417,stroke-width:2px,color:#111417 style H fill:#a0a0a0,stroke:#111417,stroke-width:2px,color:#111417 style I fill:#a0a0a0,stroke:#111417,stroke-width:2px,color:#111417 ``` -1. **Compose Your Scene**: Instead of using one large model, you can load multiple `RenderFormer Mesh Loader` nodes for different parts of your scene (e.g., characters, props, background elements). -2. **Combine Meshes**: Use one or more `RenderFormer Mesh Combine` nodes to merge all your individual meshes into a single `MESH` output. This creates a clean, organized workflow and makes it easy to manage complex scenes. -3. **Animate the Camera**: - * Define the starting view with a `RenderFormer Camera` node. - * Connect its `CAMERA` output to the `start_camera` input of a `RenderFormer Camera Target` node. - * In the `Camera Target` node, define the end position, look-at point, and FOV for your animation, along with the total number of frames. This generates a `CAMERA_SEQUENCE`. -4. **Build the Scene Sequence**: Connect your combined `MESH`, the `CAMERA_SEQUENCE`, and your `LIGHTING` to the `RenderFormer Scene Builder`. It will automatically create a sequence of scenes, one for each frame of the animation. -5. **Render and Save**: - * The `RenderFormer Sampler` will receive the `SCENE_SEQUENCE` and render all frames, outputting them as an `IMAGES` batch. - * Connect this batch to a `Create Video` node (or another video-handling node) and then to a `Save Video` node to get your final animation file. +1. **Compose Your Scene**: Build complex scenes by loading multiple `RenderFormer Mesh Loader` nodes. Group them logically using `RenderFormer Mesh Combine` nodes. You can even chain `Combine` nodes together for highly organized, large-scale scenes. +2. **Animate the Camera**: Define the starting view with a `RenderFormer Camera` node and the ending view with a `RenderFormer Camera Target` node. +3. **Animate Multiple Lights**: + * For each light you want to animate, create a pair of `RenderFormer Lighting` (for the start state) and `RenderFormer Lighting Target` (for the end state) nodes. + * Feed all the `Lighting Target` outputs into a single `RenderFormer Lighting Combine` node. This node intelligently gathers all start and end states. +4. **Build the Scene Sequence**: + * Connect your final combined `MESH` to the `RenderFormer Scene Builder`. + * Connect your starting `RenderFormer Camera` to the required `camera` input. + * Connect your `RenderFormer Camera Target` to the optional `camera_sequence` input. + * The `RenderFormer Lighting Combine` node provides two outputs. Connect its `LIGHTING` output to the required `lighting` input of the Scene Builder, and its `LIGHTING_SEQUENCE` output to the optional `lighting_sequence` input. +5. **Render and Save**: The `RenderFormer Sampler` will receive the `SCENE_SEQUENCE` and render all frames, which can then be saved as a video. --- @@ -246,12 +257,12 @@ This wrapper provides a comprehensive set of nodes to build 3D scenes. - **RenderFormer Lighting**: Creates a configurable emissive light source. #### Animation -- **RenderFormer Camera Target**: Creates a camera animation sequence by interpolating between a start and end camera state (position, look-at, FOV). -- **RenderFormer Lighting Target**: Creates a light animation sequence by interpolating between a start and end light state (position, rotation, scale, and emission). +- **RenderFormer Camera Target**: Creates a camera animation sequence by defining a start and end camera state (position, look-at, FOV). +- **RenderFormer Lighting Target**: Creates a light animation sequence by defining a start and end light state (position, rotation, scale, and emission). #### Utilities - **RenderFormer Mesh Combine**: Combines multiple `MESH` outputs into a single object list. -- **RenderFormer Lighting Combine**: A powerful node that enables multi-light animation. It accepts any combination of static lights and animated light sequences, and outputs two complete lists: one for the start frame and one for the end frame. This allows for complex, synchronized lighting animations. +- **RenderFormer Lighting Combine**: A powerful node that enables multi-light animation. It accepts any combination of static lights (`LIGHTING`) and animated lights (`LIGHTING_SEQUENCE`), and outputs a single, unified `LIGHTING_SEQUENCE` ready for the Scene Builder. It also outputs the `start_frame_lighting` separately for a direct, convenient connection. - **RenderFormer Remesh**: Simplifies the geometry of a mesh to a target face count using `pymeshlab`. - **RenderFormer Random Colors**: Applies random vertex colors to a mesh for creative effects or debugging. @@ -263,13 +274,11 @@ This wrapper provides a comprehensive set of nodes to build 3D scenes. ### 📜 Version History -#### Version 0.4.0 - Multi-Light Animation -- **Feature: Multi-Light Animation:** The lighting system has been completely overhauled to support the animation of multiple lights simultaneously. -- **Workflow:** The `RenderFormerLightingCombine` node is now the central hub for all lighting. It takes any combination of static and animated lights and produces a `start_frame_lighting` and `end_frame_lighting` list. -- **Workflow:** The `RenderFormerSceneBuilder` now uses the `end_lighting` input to receive the end-frame data, simplifying the animation triggering logic. This removes the need for a separate `lighting_sequence` input. - -#### Version 0.3.1 - Flexible Lighting Workflow -- **Workflow:** The `RenderFormerLightingCombine` node has been overhauled. It now accepts both static `LIGHTING` and animated `LIGHTING_SEQUENCE` inputs simultaneously. It intelligently separates the animation data, allowing you to combine multiple static lights with one animated light in a single, streamlined workflow. +#### Version 0.5.0 - Workflow Optimization +- **Workflow:** The animation workflow has been significantly simplified and made more robust. The `RenderFormerSceneBuilder` now has a **required** `lighting` input that explicitly defines the start-frame lighting. +- **Workflow:** The `end_lighting` input on the `Scene Builder` has been **removed**. All lighting animation is now handled by the optional `lighting_sequence` input, which provides the end-frame state. +- **Data Flow:** The `RenderFormerLightingTarget` and `RenderFormerLightingCombine` nodes have been updated to output a standardized `LIGHTING_SEQUENCE` dictionary (`{ "start_lights": [...], "end_lights": [...] }`), ensuring consistent data flow. +- **Convenience:** The `RenderFormerLightingCombine` node now provides a separate `start_frame_lighting` output for a direct connection to the `Scene Builder`'s required `lighting` input, preserving a clean and logical graph. #### Version 0.3.0 - Animation Overhaul and Performance Boost - **Feature: Full Light Animation:** The `RenderFormerLightingTarget` node now supports animating a light's position, rotation, scale, and emissive strength, enabling complex dynamic lighting effects. diff --git a/__pycache__/__init__.cpython-312.pyc b/__pycache__/__init__.cpython-312.pyc deleted file mode 100644 index 6262ffb..0000000 Binary files a/__pycache__/__init__.cpython-312.pyc and /dev/null differ diff --git a/__pycache__/nodes.cpython-312.pyc b/__pycache__/nodes.cpython-312.pyc deleted file mode 100644 index c226890..0000000 Binary files a/__pycache__/nodes.cpython-312.pyc and /dev/null differ diff --git a/assets/img/phrenderformer_wip_02.png b/assets/img/phrenderformer_wip_02.png index fea3e39..855a0a7 100644 Binary files a/assets/img/phrenderformer_wip_02.png and b/assets/img/phrenderformer_wip_02.png differ diff --git a/example_workflows/ph_renderformer_advanced_01.json b/example_workflows/ph_renderformer_advanced_01.json index 34bcdd9..cb3818d 100644 --- a/example_workflows/ph_renderformer_advanced_01.json +++ b/example_workflows/ph_renderformer_advanced_01.json @@ -1 +1 @@ -{"id":"25bb5802-368e-4959-a038-1333f1c4f36e","revision":0,"last_node_id":59,"last_link_id":105,"nodes":[{"id":10,"type":"RenderFormerModelLoader","pos":[950,1170],"size":[299.8785095214844,82],"flags":{},"order":0,"mode":0,"inputs":[{"localized_name":"model_id","name":"model_id","type":"STRING","widget":{"name":"model_id"},"link":null},{"localized_name":"precision","name":"precision","type":"COMBO","widget":{"name":"precision"},"link":null}],"outputs":[{"localized_name":"MODEL","name":"MODEL","type":"MODEL","links":[55]}],"properties":{"Node name for S&R":"RenderFormerModelLoader","widget_ue_connectable":{}},"widgets_values":["microsoft/renderformer-v1.1-swin-large","fp32"],"color":"#FDC501","bgcolor":"#111417"},{"id":9,"type":"MarkdownNote","pos":[3190,970],"size":[760,120],"flags":{},"order":1,"mode":0,"inputs":[],"outputs":[],"properties":{"widget_ue_connectable":{}},"widgets_values":["# IV\n\n## Output\n\nEnjoy."],"color":"#222","bgcolor":"#000"},{"id":16,"type":"SaveImage","pos":[3190,1170],"size":[760,740],"flags":{},"order":26,"mode":0,"inputs":[{"localized_name":"images","name":"images","type":"IMAGE","link":88},{"localized_name":"filename_prefix","name":"filename_prefix","type":"STRING","widget":{"name":"filename_prefix"},"link":null}],"outputs":[],"properties":{"cnr_id":"comfy-core","ver":"0.3.42","Node name for S&R":"SaveImage","widget_ue_connectable":{}},"widgets_values":["RenderFormer"]},{"id":6,"type":"MarkdownNote","pos":[940,970],"size":[310,120],"flags":{},"order":2,"mode":0,"inputs":[],"outputs":[],"properties":{"widget_ue_connectable":{}},"widgets_values":["# I\n\n## Model Loaders\n\nLoad and use your favorit model and clip."],"color":"#222","bgcolor":"#000"},{"id":58,"type":"Load3D","pos":[1320,1170],"size":[300,600],"flags":{},"order":3,"mode":0,"inputs":[{"localized_name":"model_file","name":"model_file","type":"COMBO","widget":{"name":"model_file"},"link":null},{"localized_name":"image","name":"image","type":"LOAD_3D","widget":{"name":"image"},"link":null},{"localized_name":"width","name":"width","type":"INT","widget":{"name":"width"},"link":null},{"localized_name":"height","name":"height","type":"INT","widget":{"name":"height"},"link":null}],"outputs":[{"localized_name":"image","name":"image","type":"IMAGE","links":null},{"localized_name":"mask","name":"mask","type":"MASK","links":null},{"localized_name":"mesh_path","name":"mesh_path","type":"STRING","links":[103]},{"localized_name":"normal","name":"normal","type":"IMAGE","links":null},{"localized_name":"lineart","name":"lineart","type":"IMAGE","links":null},{"localized_name":"camera_info","name":"camera_info","type":"LOAD3D_CAMERA","links":null},{"localized_name":"recording_video","name":"recording_video","type":"VIDEO","links":null}],"properties":{"cnr_id":"comfy-core","ver":"0.3.42","Node name for S&R":"Load3D","widget_ue_connectable":{},"Camera Info":{"position":{"x":10,"y":2.074473455872055,"z":10.000000000000002},"target":{"x":0,"y":0.5186183639680135,"z":0},"zoom":1,"cameraType":"perspective"}},"widgets_values":["3d/phrenderformertest_00.obj","upload3dmodel","clear","",1024,1024]},{"id":45,"type":"RenderFormerMeshCombine","pos":[1940,1990],"size":[265.10205078125,166],"flags":{"collapsed":true},"order":22,"mode":0,"inputs":[{"localized_name":"mesh_1","name":"mesh_1","type":"MESH","link":64},{"localized_name":"mesh_2","name":"mesh_2","shape":7,"type":"MESH","link":65},{"localized_name":"mesh_3","name":"mesh_3","shape":7,"type":"MESH","link":66},{"localized_name":"mesh_4","name":"mesh_4","shape":7,"type":"MESH","link":67},{"localized_name":"mesh_5","name":"mesh_5","shape":7,"type":"MESH","link":null},{"localized_name":"mesh_6","name":"mesh_6","shape":7,"type":"MESH","link":null},{"localized_name":"mesh_7","name":"mesh_7","shape":7,"type":"MESH","link":null},{"localized_name":"mesh_8","name":"mesh_8","shape":7,"type":"MESH","link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[93]}],"properties":{"Node name for S&R":"RenderFormerMeshCombine","widget_ue_connectable":{}},"widgets_values":[],"color":"#FDC501","bgcolor":"#111417"},{"id":46,"type":"RenderFormerLoadMesh","pos":[1940,1950],"size":[216.53378295898438,54],"flags":{"collapsed":true},"order":4,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[67]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["phrenderformer_sphere_00.obj","",true,0.4400000000000001,-0.3480000000000001,-0.4000000000000001,0,0,0,0.10000000000000002,"255, 255, 255","0,0,0",0.05000000000000001,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":44,"type":"RenderFormerLoadMesh","pos":[1940,1910],"size":[216.53378295898438,54],"flags":{"collapsed":true},"order":5,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[66]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["phrenderformer_sphere_00.obj","",true,0.32000000000000006,-0.3480000000000001,-0.4000000000000001,0,0,0,0.10000000000000002,"0, 0, 0","255,255,255",0.05000000000000001,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":43,"type":"RenderFormerLoadMesh","pos":[1940,1870],"size":[216.53378295898438,54],"flags":{"collapsed":true},"order":21,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":76},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[65]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["phrenderformer_sphere_00.obj","",true,0.20000000000000004,-0.3480000000000001,-0.4000000000000001,0,0,0,0.10000000000000002,"255, 255, 255","10,10,10",0.05000000000000001,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":48,"type":"RenderFormerMeshCombine","pos":[1680,1990],"size":[266.2938537597656,166],"flags":{"collapsed":true},"order":18,"mode":0,"inputs":[{"localized_name":"mesh_1","name":"mesh_1","type":"MESH","link":68},{"localized_name":"mesh_2","name":"mesh_2","shape":7,"type":"MESH","link":99},{"localized_name":"mesh_3","name":"mesh_3","shape":7,"type":"MESH","link":98},{"localized_name":"mesh_4","name":"mesh_4","shape":7,"type":"MESH","link":71},{"localized_name":"mesh_5","name":"mesh_5","shape":7,"type":"MESH","link":null},{"localized_name":"mesh_6","name":"mesh_6","shape":7,"type":"MESH","link":null},{"localized_name":"mesh_7","name":"mesh_7","shape":7,"type":"MESH","link":null},{"localized_name":"mesh_8","name":"mesh_8","shape":7,"type":"MESH","link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[94]}],"properties":{"Node name for S&R":"RenderFormerMeshCombine","widget_ue_connectable":{}},"widgets_values":[],"color":"#FDC501","bgcolor":"#111417"},{"id":51,"type":"RenderFormerLoadMesh","pos":[1680,1950],"size":[216.53378295898438,54],"flags":{"collapsed":true},"order":6,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[71]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":null}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["plane.obj","",true,0,0,0,0,0,0,1,"204, 204, 204","25, 25, 25",0.7,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":56,"type":"RenderFormerLoadMesh","pos":[1680,1910],"size":[216.53378295898438,54],"flags":{"collapsed":true},"order":7,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[98]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":null}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["wall2.obj","",true,0,0,0,0,0,0,1,"255, 0, 0","0,0,0",0,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":57,"type":"RenderFormerLoadMesh","pos":[1680,1870],"size":[216.53378295898438,54],"flags":{"collapsed":true},"order":8,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[99]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["wall1.obj","",true,0,0,0,0,0,0,1,"0, 135, 184","0,0,0",1,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":53,"type":"RenderFormerLoadMesh","pos":[1680,1830],"size":[216.53378295898438,54],"flags":{"collapsed":true},"order":9,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[68]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":null}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["wall0.obj","",true,0,0,0,0,0,0,1,"0, 0, 0","250,250,250",0.08000000000000002,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":47,"type":"RenderFormerLoadMesh","pos":[1940,1830],"size":[216.53378295898438,54],"flags":{"collapsed":true},"order":10,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[64]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["phrenderformer_sphere_00.obj","",true,0.08000000000000002,-0.3480000000000001,-0.4000000000000001,0,0,0,0.10000000000000002,"0, 0, 0","10,10,10",0.05000000000000001,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":20,"type":"RenderFormerMeshCombine","pos":[2210,1830],"size":[228.96835327148438,170],"flags":{},"order":23,"mode":0,"inputs":[{"localized_name":"mesh_1","name":"mesh_1","type":"MESH","link":90},{"localized_name":"mesh_2","name":"mesh_2","shape":7,"type":"MESH","link":91},{"localized_name":"mesh_3","name":"mesh_3","shape":7,"type":"MESH","link":92},{"localized_name":"mesh_4","name":"mesh_4","shape":7,"type":"MESH","link":93},{"localized_name":"mesh_5","name":"mesh_5","shape":7,"type":"MESH","link":94},{"localized_name":"mesh_6","name":"mesh_6","shape":7,"type":"MESH","link":null},{"localized_name":"mesh_7","name":"mesh_7","shape":7,"type":"MESH","link":null},{"localized_name":"mesh_8","name":"mesh_8","shape":7,"type":"MESH","link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[33]}],"properties":{"Node name for S&R":"RenderFormerMeshCombine","widget_ue_connectable":{}},"widgets_values":[],"color":"#FDC501","bgcolor":"#111417"},{"id":34,"type":"CreateVideo","pos":[2830,2080],"size":[290,80],"flags":{},"order":27,"mode":0,"inputs":[{"localized_name":"images","name":"images","type":"IMAGE","link":102},{"localized_name":"audio","name":"audio","shape":7,"type":"AUDIO","link":null},{"localized_name":"fps","name":"fps","type":"FLOAT","widget":{"name":"fps"},"link":null}],"outputs":[{"localized_name":"VIDEO","name":"VIDEO","type":"VIDEO","links":[63]}],"properties":{"cnr_id":"comfy-core","ver":"0.3.42","Node name for S&R":"CreateVideo","widget_ue_connectable":{}},"widgets_values":[24]},{"id":32,"type":"RenderFormerCameraTarget","pos":[2830,1170],"size":[290,230],"flags":{},"order":19,"mode":0,"inputs":[{"localized_name":"start_camera","name":"start_camera","type":"CAMERA","link":96},{"localized_name":"end_pos_x","name":"end_pos_x","type":"FLOAT","widget":{"name":"end_pos_x"},"link":null},{"localized_name":"end_pos_y","name":"end_pos_y","type":"FLOAT","widget":{"name":"end_pos_y"},"link":null},{"localized_name":"end_pos_z","name":"end_pos_z","type":"FLOAT","widget":{"name":"end_pos_z"},"link":null},{"localized_name":"end_look_at_x","name":"end_look_at_x","type":"FLOAT","widget":{"name":"end_look_at_x"},"link":null},{"localized_name":"end_look_at_y","name":"end_look_at_y","type":"FLOAT","widget":{"name":"end_look_at_y"},"link":null},{"localized_name":"end_look_at_z","name":"end_look_at_z","type":"FLOAT","widget":{"name":"end_look_at_z"},"link":null},{"localized_name":"end_fov","name":"end_fov","type":"FLOAT","widget":{"name":"end_fov"},"link":null}],"outputs":[{"localized_name":"CAMERA_SEQUENCE","name":"CAMERA_SEQUENCE","type":"CAMERA_SEQUENCE","links":[80]}],"properties":{"Node name for S&R":"RenderFormerCameraTarget","widget_ue_connectable":{}},"widgets_values":[0,-0.8000000000000002,0,0,0,0,37.5],"color":"#FDC501","bgcolor":"#111417"},{"id":28,"type":"RenderFormerLoadMesh","pos":[1670,1170],"size":[216.53378295898438,589],"flags":{"collapsed":false},"order":17,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":103},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[90]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[76]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["bunny.obj","",true,0,0,0.19700000000000004,0,18.5,142.8,1,"223, 168, 0","25, 25, 25",0.7,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":17,"type":"RenderFormerLoadMesh","pos":[1940,1170],"size":[216.53378295898438,589],"flags":{"collapsed":false},"order":11,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[91]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["fox.obj","",true,0,0,-0.32400000000000007,0,0,-79.80000000000001,1,"0, 0, 0","100,100,100",0,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":52,"type":"RenderFormerLoadMesh","pos":[2210,1170],"size":[216.53378295898438,589],"flags":{"collapsed":false},"order":12,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[92]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["phrenderformer_sphere_00.obj","",true,0.31000000000000005,0,-0.3600000000000001,0,0,0,0.30000000000000004,"5, 147, 23","10,10,10",0,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":55,"type":"RenderFormerCamera","pos":[2490,1170],"size":[270,202],"flags":{},"order":13,"mode":0,"inputs":[{"localized_name":"camera_pos_x","name":"camera_pos_x","type":"FLOAT","widget":{"name":"camera_pos_x"},"link":null},{"localized_name":"camera_pos_y","name":"camera_pos_y","type":"FLOAT","widget":{"name":"camera_pos_y"},"link":null},{"localized_name":"camera_pos_z","name":"camera_pos_z","type":"FLOAT","widget":{"name":"camera_pos_z"},"link":null},{"localized_name":"camera_look_at_x","name":"camera_look_at_x","type":"FLOAT","widget":{"name":"camera_look_at_x"},"link":null},{"localized_name":"camera_look_at_y","name":"camera_look_at_y","type":"FLOAT","widget":{"name":"camera_look_at_y"},"link":null},{"localized_name":"camera_look_at_z","name":"camera_look_at_z","type":"FLOAT","widget":{"name":"camera_look_at_z"},"link":null},{"localized_name":"fov","name":"fov","type":"FLOAT","widget":{"name":"fov"},"link":null}],"outputs":[{"localized_name":"CAMERA","name":"CAMERA","type":"CAMERA","links":[95,96]}],"properties":{"Node name for S&R":"RenderFormerCamera","widget_ue_connectable":{}},"widgets_values":[0,-2,0,0,0,0,37.5],"color":"#FDC501","bgcolor":"#111417"},{"id":7,"type":"MarkdownNote","pos":[1320,970],"size":[1440,120],"flags":{},"order":14,"mode":0,"inputs":[],"outputs":[],"properties":{"widget_ue_connectable":{}},"widgets_values":["# II\n\n## Inputs\n\nYour 3d models goes here. Define Materials per Mesh Loader or Overwrite anothers Mesh Loader by using the *MATERIAL* in-/output."],"color":"#222","bgcolor":"#000"},{"id":8,"type":"MarkdownNote","pos":[2830,970],"size":[290,120],"flags":{},"order":15,"mode":0,"inputs":[],"outputs":[],"properties":{"widget_ue_connectable":{}},"widgets_values":["# III\n\n## Config & Processing\n\nConfiguration settings for sampling."],"color":"#222","bgcolor":"#000"},{"id":42,"type":"SaveVideo","pos":[3190,1990],"size":[864,962],"flags":{},"order":28,"mode":0,"inputs":[{"localized_name":"video","name":"video","type":"VIDEO","link":63},{"localized_name":"filename_prefix","name":"filename_prefix","type":"STRING","widget":{"name":"filename_prefix"},"link":null},{"localized_name":"format","name":"format","type":"COMBO","widget":{"name":"format"},"link":null},{"localized_name":"codec","name":"codec","type":"COMBO","widget":{"name":"codec"},"link":null}],"outputs":[],"properties":{"cnr_id":"comfy-core","ver":"0.3.42","Node name for S&R":"SaveVideo","widget_ue_connectable":{}},"widgets_values":["video/ComfyUI","auto","auto"]},{"id":54,"type":"RenderFormerLighting","pos":[2490,1440],"size":[270,250],"flags":{},"order":16,"mode":0,"inputs":[{"localized_name":"emissive_rgb","name":"emissive_rgb","type":"STRING","widget":{"name":"emissive_rgb"},"link":null},{"localized_name":"emissive_strength","name":"emissive_strength","type":"FLOAT","widget":{"name":"emissive_strength"},"link":null},{"localized_name":"trans_x","name":"trans_x","type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","type":"FLOAT","widget":{"name":"scale"},"link":null}],"outputs":[{"localized_name":"LIGHTING","name":"LIGHTING","type":"LIGHTING","links":[89,104]}],"properties":{"Node name for S&R":"RenderFormerLighting","widget_ue_connectable":{}},"widgets_values":["255, 255, 255",3000,0,0,2.1,0,0,0,2.5],"color":"#FDC501","bgcolor":"#111417"},{"id":38,"type":"RenderFormerGenerator","pos":[2830,1870],"size":[290,146],"flags":{},"order":25,"mode":0,"inputs":[{"localized_name":"model","name":"model","type":"MODEL","link":55},{"localized_name":"scene","name":"scene","shape":7,"type":"SCENE","link":87},{"localized_name":"scene_sequence","name":"scene_sequence","shape":7,"type":"SCENE_SEQUENCE","link":101},{"localized_name":"resolution","name":"resolution","type":"INT","widget":{"name":"resolution"},"link":null},{"localized_name":"tone_mapper","name":"tone_mapper","type":"COMBO","widget":{"name":"tone_mapper"},"link":null},{"localized_name":"resolution_vid","name":"resolution_vid","shape":7,"type":"INT","widget":{"name":"resolution_vid"},"link":null}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"IMAGE","links":[88]},{"localized_name":"IMAGES","name":"IMAGES","type":"IMAGE","links":[102]}],"properties":{"Node name for S&R":"RenderFormerGenerator","widget_ue_connectable":{}},"widgets_values":[512,"agx",512],"color":"#FDC501","bgcolor":"#111417"},{"id":59,"type":"RenderFormerLightingTarget","pos":[2830,1460],"size":[290,130],"flags":{},"order":20,"mode":0,"inputs":[{"localized_name":"start_lighting","name":"start_lighting","type":"LIGHTING","link":104},{"localized_name":"end_pos_x","name":"end_pos_x","type":"FLOAT","widget":{"name":"end_pos_x"},"link":null},{"localized_name":"end_pos_y","name":"end_pos_y","type":"FLOAT","widget":{"name":"end_pos_y"},"link":null},{"localized_name":"end_pos_z","name":"end_pos_z","type":"FLOAT","widget":{"name":"end_pos_z"},"link":null},{"localized_name":"end_emissive_strength","name":"end_emissive_strength","type":"FLOAT","widget":{"name":"end_emissive_strength"},"link":null}],"outputs":[{"localized_name":"LIGHTING_SEQUENCE","name":"LIGHTING_SEQUENCE","type":"LIGHTING_SEQUENCE","links":[105]}],"properties":{"widget_ue_connectable":{},"Node name for S&R":"RenderFormerLightingTarget"},"widgets_values":[-1.2100000000000002,0,2.1,5000],"color":"#FDC501","bgcolor":"#111417"},{"id":29,"type":"RenderFormerSceneBuilder","pos":[2830,1650],"size":[290,162],"flags":{},"order":24,"mode":0,"inputs":[{"localized_name":"mesh","name":"mesh","type":"MESH","link":33},{"localized_name":"lighting","name":"lighting","type":"LIGHTING","link":89},{"localized_name":"camera","name":"camera","type":"CAMERA","link":95},{"localized_name":"camera_sequence","name":"camera_sequence","shape":7,"type":"CAMERA_SEQUENCE","link":80},{"localized_name":"lighting_sequence","name":"lighting_sequence","shape":7,"type":"LIGHTING_SEQUENCE","link":105},{"localized_name":"num_frames","name":"num_frames","shape":7,"type":"INT","widget":{"name":"num_frames"},"link":null},{"localized_name":"add_default_background","name":"add_default_background","shape":7,"type":"BOOLEAN","widget":{"name":"add_default_background"},"link":null}],"outputs":[{"localized_name":"SCENE","name":"SCENE","type":"SCENE","links":[87]},{"localized_name":"SCENE_SEQUENCE","name":"SCENE_SEQUENCE","type":"SCENE_SEQUENCE","links":[101]}],"properties":{"Node name for S&R":"RenderFormerSceneBuilder","widget_ue_connectable":{}},"widgets_values":[24,false],"color":"#FDC501","bgcolor":"#111417"}],"links":[[33,20,0,29,0,"MESH"],[55,10,0,38,0,"MODEL"],[63,34,0,42,0,"VIDEO"],[64,47,0,45,0,"MESH"],[65,43,0,45,1,"MESH"],[66,44,0,45,2,"MESH"],[67,46,0,45,3,"MESH"],[68,53,0,48,0,"MESH"],[71,51,0,48,3,"MESH"],[76,28,1,43,0,"MATERIAL"],[80,32,0,29,3,"CAMERA_SEQUENCE"],[87,29,0,38,1,"SCENE"],[88,38,0,16,0,"IMAGE"],[89,54,0,29,1,"LIGHTING"],[90,28,0,20,0,"MESH"],[91,17,0,20,1,"MESH"],[92,52,0,20,2,"MESH"],[93,45,0,20,3,"MESH"],[94,48,0,20,4,"MESH"],[95,55,0,29,2,"CAMERA"],[96,55,0,32,0,"CAMERA"],[98,56,0,48,2,"MESH"],[99,57,0,48,1,"MESH"],[101,29,1,38,2,"SCENE_SEQUENCE"],[102,38,1,34,0,"IMAGE"],[103,58,2,28,2,"STRING"],[104,54,0,59,0,"LIGHTING"],[105,59,0,29,4,"LIGHTING_SEQUENCE"]],"groups":[],"config":{},"extra":{"ue_links":[],"ds":{"scale":0.8669438814834032,"offset":[-1835.033727326927,-1324.5199475137933]},"links_added_by_ue":[]},"version":0.4} \ No newline at end of file +{"id":"25bb5802-368e-4959-a038-1333f1c4f36e","revision":0,"last_node_id":65,"last_link_id":115,"nodes":[{"id":16,"type":"SaveImage","pos":[3550,1170],"size":[760,740],"flags":{},"order":30,"mode":0,"inputs":[{"localized_name":"images","name":"images","type":"IMAGE","link":88},{"localized_name":"filename_prefix","name":"filename_prefix","type":"STRING","widget":{"name":"filename_prefix"},"link":null}],"outputs":[],"properties":{"cnr_id":"comfy-core","ver":"0.3.42","Node name for S&R":"SaveImage","widget_ue_connectable":{}},"widgets_values":["RenderFormer"]},{"id":6,"type":"MarkdownNote","pos":[940,970],"size":[310,120],"flags":{},"order":0,"mode":0,"inputs":[],"outputs":[],"properties":{"widget_ue_connectable":{}},"widgets_values":["# I\n\n## Model Loaders\n\nLoad and use your favorit model and clip."],"color":"#222","bgcolor":"#000"},{"id":58,"type":"Load3D","pos":[1320,1170],"size":[300,600],"flags":{},"order":1,"mode":0,"inputs":[{"localized_name":"model_file","name":"model_file","type":"COMBO","widget":{"name":"model_file"},"link":null},{"localized_name":"image","name":"image","type":"LOAD_3D","widget":{"name":"image"},"link":null},{"localized_name":"width","name":"width","type":"INT","widget":{"name":"width"},"link":null},{"localized_name":"height","name":"height","type":"INT","widget":{"name":"height"},"link":null}],"outputs":[{"localized_name":"image","name":"image","type":"IMAGE","links":null},{"localized_name":"mask","name":"mask","type":"MASK","links":null},{"localized_name":"mesh_path","name":"mesh_path","type":"STRING","links":[103]},{"localized_name":"normal","name":"normal","type":"IMAGE","links":null},{"localized_name":"lineart","name":"lineart","type":"IMAGE","links":null},{"localized_name":"camera_info","name":"camera_info","type":"LOAD3D_CAMERA","links":null},{"localized_name":"recording_video","name":"recording_video","type":"VIDEO","links":null}],"properties":{"cnr_id":"comfy-core","ver":"0.3.42","Node name for S&R":"Load3D","widget_ue_connectable":{},"Camera Info":{"position":{"x":10,"y":2.074473455872055,"z":10.000000000000002},"target":{"x":0,"y":0.5186183639680135,"z":0},"zoom":1,"cameraType":"perspective"}},"widgets_values":["3d/phrenderformertest_00.obj","upload3dmodel","clear","",1024,1024]},{"id":45,"type":"RenderFormerMeshCombine","pos":[1940,1990],"size":[265.10205078125,166],"flags":{"collapsed":true},"order":26,"mode":0,"inputs":[{"localized_name":"mesh_1","name":"mesh_1","type":"MESH","link":64},{"localized_name":"mesh_2","name":"mesh_2","shape":7,"type":"MESH","link":65},{"localized_name":"mesh_3","name":"mesh_3","shape":7,"type":"MESH","link":66},{"localized_name":"mesh_4","name":"mesh_4","shape":7,"type":"MESH","link":67},{"localized_name":"mesh_5","name":"mesh_5","shape":7,"type":"MESH","link":null},{"localized_name":"mesh_6","name":"mesh_6","shape":7,"type":"MESH","link":null},{"localized_name":"mesh_7","name":"mesh_7","shape":7,"type":"MESH","link":null},{"localized_name":"mesh_8","name":"mesh_8","shape":7,"type":"MESH","link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[93]}],"properties":{"Node name for S&R":"RenderFormerMeshCombine","widget_ue_connectable":{}},"widgets_values":[],"color":"#FDC501","bgcolor":"#111417"},{"id":46,"type":"RenderFormerLoadMesh","pos":[1940,1950],"size":[216.53378295898438,54],"flags":{"collapsed":true},"order":2,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[67]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["phrenderformer_sphere_00.obj","",true,0.4400000000000001,-0.3480000000000001,-0.4000000000000001,0,0,0,0.10000000000000002,"255, 255, 255","0,0,0",0.05000000000000001,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":44,"type":"RenderFormerLoadMesh","pos":[1940,1910],"size":[216.53378295898438,54],"flags":{"collapsed":true},"order":3,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[66]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["phrenderformer_sphere_00.obj","",true,0.32000000000000006,-0.3480000000000001,-0.4000000000000001,0,0,0,0.10000000000000002,"0, 0, 0","255,255,255",0.05000000000000001,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":43,"type":"RenderFormerLoadMesh","pos":[1940,1870],"size":[216.53378295898438,54],"flags":{"collapsed":true},"order":24,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":76},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[65]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["phrenderformer_sphere_00.obj","",true,0.20000000000000004,-0.3480000000000001,-0.4000000000000001,0,0,0,0.10000000000000002,"255, 255, 255","10,10,10",0.05000000000000001,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":48,"type":"RenderFormerMeshCombine","pos":[1680,1990],"size":[266.2938537597656,166],"flags":{"collapsed":true},"order":20,"mode":0,"inputs":[{"localized_name":"mesh_1","name":"mesh_1","type":"MESH","link":68},{"localized_name":"mesh_2","name":"mesh_2","shape":7,"type":"MESH","link":99},{"localized_name":"mesh_3","name":"mesh_3","shape":7,"type":"MESH","link":98},{"localized_name":"mesh_4","name":"mesh_4","shape":7,"type":"MESH","link":71},{"localized_name":"mesh_5","name":"mesh_5","shape":7,"type":"MESH","link":null},{"localized_name":"mesh_6","name":"mesh_6","shape":7,"type":"MESH","link":null},{"localized_name":"mesh_7","name":"mesh_7","shape":7,"type":"MESH","link":null},{"localized_name":"mesh_8","name":"mesh_8","shape":7,"type":"MESH","link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[94]}],"properties":{"Node name for S&R":"RenderFormerMeshCombine","widget_ue_connectable":{}},"widgets_values":[],"color":"#FDC501","bgcolor":"#111417"},{"id":51,"type":"RenderFormerLoadMesh","pos":[1680,1950],"size":[216.53378295898438,54],"flags":{"collapsed":true},"order":4,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[71]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":null}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["plane.obj","",true,0,0,0,0,0,0,1,"204, 204, 204","25, 25, 25",0.7,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":56,"type":"RenderFormerLoadMesh","pos":[1680,1910],"size":[216.53378295898438,54],"flags":{"collapsed":true},"order":5,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[98]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":null}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["wall2.obj","",true,0,0,0,0,0,0,1,"255, 0, 0","0,0,0",0,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":57,"type":"RenderFormerLoadMesh","pos":[1680,1870],"size":[216.53378295898438,54],"flags":{"collapsed":true},"order":6,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[99]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["wall1.obj","",true,0,0,0,0,0,0,1,"0, 135, 184","0,0,0",1,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":53,"type":"RenderFormerLoadMesh","pos":[1680,1830],"size":[216.53378295898438,54],"flags":{"collapsed":true},"order":7,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[68]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":null}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["wall0.obj","",true,0,0,0,0,0,0,1,"0, 0, 0","250,250,250",0.08000000000000002,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":47,"type":"RenderFormerLoadMesh","pos":[1940,1830],"size":[216.53378295898438,54],"flags":{"collapsed":true},"order":8,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[64]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["phrenderformer_sphere_00.obj","",true,0.08000000000000002,-0.3480000000000001,-0.4000000000000001,0,0,0,0.10000000000000002,"0, 0, 0","10,10,10",0.05000000000000001,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":20,"type":"RenderFormerMeshCombine","pos":[2210,1830],"size":[228.96835327148438,170],"flags":{},"order":27,"mode":0,"inputs":[{"localized_name":"mesh_1","name":"mesh_1","type":"MESH","link":90},{"localized_name":"mesh_2","name":"mesh_2","shape":7,"type":"MESH","link":91},{"localized_name":"mesh_3","name":"mesh_3","shape":7,"type":"MESH","link":92},{"localized_name":"mesh_4","name":"mesh_4","shape":7,"type":"MESH","link":93},{"localized_name":"mesh_5","name":"mesh_5","shape":7,"type":"MESH","link":94},{"localized_name":"mesh_6","name":"mesh_6","shape":7,"type":"MESH","link":null},{"localized_name":"mesh_7","name":"mesh_7","shape":7,"type":"MESH","link":null},{"localized_name":"mesh_8","name":"mesh_8","shape":7,"type":"MESH","link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[33]}],"properties":{"Node name for S&R":"RenderFormerMeshCombine","widget_ue_connectable":{}},"widgets_values":[],"color":"#FDC501","bgcolor":"#111417"},{"id":28,"type":"RenderFormerLoadMesh","pos":[1670,1170],"size":[216.53378295898438,589],"flags":{"collapsed":false},"order":19,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":103},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[90]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[76]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["bunny.obj","",true,0,0,0.19700000000000004,0,18.5,142.8,1,"223, 168, 0","25, 25, 25",0.7,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":17,"type":"RenderFormerLoadMesh","pos":[1940,1170],"size":[216.53378295898438,589],"flags":{"collapsed":false},"order":9,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[91]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["fox.obj","",true,0,0,-0.32400000000000007,0,0,-79.80000000000001,1,"0, 0, 0","100,100,100",0,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":52,"type":"RenderFormerLoadMesh","pos":[2210,1170],"size":[216.53378295898438,589],"flags":{"collapsed":false},"order":10,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[92]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["phrenderformer_sphere_00.obj","",true,0.31000000000000005,0,-0.3600000000000001,0,0,0,0.30000000000000004,"5, 147, 23","10,10,10",0,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":55,"type":"RenderFormerCamera","pos":[2490,1170],"size":[270,202],"flags":{},"order":11,"mode":0,"inputs":[{"localized_name":"camera_pos_x","name":"camera_pos_x","type":"FLOAT","widget":{"name":"camera_pos_x"},"link":null},{"localized_name":"camera_pos_y","name":"camera_pos_y","type":"FLOAT","widget":{"name":"camera_pos_y"},"link":null},{"localized_name":"camera_pos_z","name":"camera_pos_z","type":"FLOAT","widget":{"name":"camera_pos_z"},"link":null},{"localized_name":"camera_look_at_x","name":"camera_look_at_x","type":"FLOAT","widget":{"name":"camera_look_at_x"},"link":null},{"localized_name":"camera_look_at_y","name":"camera_look_at_y","type":"FLOAT","widget":{"name":"camera_look_at_y"},"link":null},{"localized_name":"camera_look_at_z","name":"camera_look_at_z","type":"FLOAT","widget":{"name":"camera_look_at_z"},"link":null},{"localized_name":"fov","name":"fov","type":"FLOAT","widget":{"name":"fov"},"link":null}],"outputs":[{"localized_name":"CAMERA","name":"CAMERA","type":"CAMERA","links":[95,96]}],"properties":{"Node name for S&R":"RenderFormerCamera","widget_ue_connectable":{}},"widgets_values":[0,-2,0,0,0,0,37.5],"color":"#FDC501","bgcolor":"#111417"},{"id":8,"type":"MarkdownNote","pos":[3190,970],"size":[290,120],"flags":{},"order":12,"mode":0,"inputs":[],"outputs":[],"properties":{"widget_ue_connectable":{}},"widgets_values":["# III\n\n## Config & Processing\n\nConfiguration settings for sampling."],"color":"#222","bgcolor":"#000"},{"id":42,"type":"SaveVideo","pos":[3550,1990],"size":[864,962],"flags":{},"order":32,"mode":0,"inputs":[{"localized_name":"video","name":"video","type":"VIDEO","link":63},{"localized_name":"filename_prefix","name":"filename_prefix","type":"STRING","widget":{"name":"filename_prefix"},"link":null},{"localized_name":"format","name":"format","type":"COMBO","widget":{"name":"format"},"link":null},{"localized_name":"codec","name":"codec","type":"COMBO","widget":{"name":"codec"},"link":null}],"outputs":[],"properties":{"cnr_id":"comfy-core","ver":"0.3.42","Node name for S&R":"SaveVideo","widget_ue_connectable":{}},"widgets_values":["video/ComfyUI","auto","auto"]},{"id":54,"type":"RenderFormerLighting","pos":[2490,1440],"size":[270,250],"flags":{},"order":13,"mode":0,"inputs":[{"localized_name":"emissive_rgb","name":"emissive_rgb","type":"STRING","widget":{"name":"emissive_rgb"},"link":null},{"localized_name":"emissive_strength","name":"emissive_strength","type":"FLOAT","widget":{"name":"emissive_strength"},"link":null},{"localized_name":"light_pos_x","name":"light_pos_x","type":"FLOAT","widget":{"name":"light_pos_x"},"link":null},{"localized_name":"light_pos_y","name":"light_pos_y","type":"FLOAT","widget":{"name":"light_pos_y"},"link":null},{"localized_name":"light_pos_z","name":"light_pos_z","type":"FLOAT","widget":{"name":"light_pos_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","type":"FLOAT","widget":{"name":"scale"},"link":null}],"outputs":[{"localized_name":"LIGHTING","name":"LIGHTING","type":"LIGHTING","links":[113]}],"properties":{"Node name for S&R":"RenderFormerLighting","widget_ue_connectable":{}},"widgets_values":["255, 255, 255",3000,0,0,2.1,0,0,0,2.5],"color":"#FDC501","bgcolor":"#111417"},{"id":38,"type":"RenderFormerGenerator","pos":[3190,1630],"size":[290,146],"flags":{},"order":29,"mode":0,"inputs":[{"localized_name":"model","name":"model","type":"MODEL","link":55},{"localized_name":"scene","name":"scene","shape":7,"type":"SCENE","link":87},{"localized_name":"scene_sequence","name":"scene_sequence","shape":7,"type":"SCENE_SEQUENCE","link":101},{"localized_name":"resolution","name":"resolution","type":"INT","widget":{"name":"resolution"},"link":115},{"localized_name":"tone_mapper","name":"tone_mapper","type":"COMBO","widget":{"name":"tone_mapper"},"link":null},{"localized_name":"resolution_vid","name":"resolution_vid","shape":7,"type":"INT","widget":{"name":"resolution_vid"},"link":null}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"IMAGE","links":[88]},{"localized_name":"IMAGES","name":"IMAGES","type":"IMAGE","links":[102]}],"properties":{"Node name for S&R":"RenderFormerGenerator","widget_ue_connectable":{}},"widgets_values":[512,"agx",512],"color":"#FDC501","bgcolor":"#111417"},{"id":10,"type":"RenderFormerModelLoader","pos":[950,1170],"size":[299.8785095214844,82],"flags":{},"order":14,"mode":0,"inputs":[{"localized_name":"model_id","name":"model_id","type":"STRING","widget":{"name":"model_id"},"link":null},{"localized_name":"precision","name":"precision","type":"COMBO","widget":{"name":"precision"},"link":null}],"outputs":[{"localized_name":"MODEL","name":"MODEL","type":"MODEL","links":[55]}],"properties":{"Node name for S&R":"RenderFormerModelLoader","widget_ue_connectable":{}},"widgets_values":["microsoft/renderformer-v1.1-swin-large","fp32"],"color":"#FDC501","bgcolor":"#111417"},{"id":34,"type":"CreateVideo","pos":[3190,1840],"size":[290,80],"flags":{},"order":31,"mode":0,"inputs":[{"localized_name":"images","name":"images","type":"IMAGE","link":102},{"localized_name":"audio","name":"audio","shape":7,"type":"AUDIO","link":null},{"localized_name":"fps","name":"fps","type":"FLOAT","widget":{"name":"fps"},"link":null}],"outputs":[{"localized_name":"VIDEO","name":"VIDEO","type":"VIDEO","links":[63]}],"properties":{"cnr_id":"comfy-core","ver":"0.3.42","Node name for S&R":"CreateVideo","widget_ue_connectable":{}},"widgets_values":[30]},{"id":63,"type":"RenderFormerLighting","pos":[2490,1760],"size":[270,250],"flags":{},"order":15,"mode":0,"inputs":[{"localized_name":"emissive_rgb","name":"emissive_rgb","type":"STRING","widget":{"name":"emissive_rgb"},"link":null},{"localized_name":"emissive_strength","name":"emissive_strength","type":"FLOAT","widget":{"name":"emissive_strength"},"link":null},{"localized_name":"light_pos_x","name":"light_pos_x","type":"FLOAT","widget":{"name":"light_pos_x"},"link":null},{"localized_name":"light_pos_y","name":"light_pos_y","type":"FLOAT","widget":{"name":"light_pos_y"},"link":null},{"localized_name":"light_pos_z","name":"light_pos_z","type":"FLOAT","widget":{"name":"light_pos_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","type":"FLOAT","widget":{"name":"scale"},"link":null}],"outputs":[{"localized_name":"LIGHTING","name":"LIGHTING","type":"LIGHTING","links":[109]}],"properties":{"Node name for S&R":"RenderFormerLighting","widget_ue_connectable":{}},"widgets_values":["255, 255, 255",1600,0.25800000000000006,-0.22900000000000006,2.1,0,0,0,2.5],"color":"#FDC501","bgcolor":"#111417"},{"id":9,"type":"MarkdownNote","pos":[3550,970],"size":[760,120],"flags":{},"order":16,"mode":0,"inputs":[],"outputs":[],"properties":{"widget_ue_connectable":{}},"widgets_values":["# IV\n\n## Output\n\nEnjoy."],"color":"#222","bgcolor":"#000"},{"id":32,"type":"RenderFormerCameraTarget","pos":[2830,1170],"size":[290,230],"flags":{},"order":21,"mode":0,"inputs":[{"localized_name":"start_camera","name":"start_camera","type":"CAMERA","link":96},{"localized_name":"end_pos_x","name":"end_pos_x","type":"FLOAT","widget":{"name":"end_pos_x"},"link":null},{"localized_name":"end_pos_y","name":"end_pos_y","type":"FLOAT","widget":{"name":"end_pos_y"},"link":null},{"localized_name":"end_pos_z","name":"end_pos_z","type":"FLOAT","widget":{"name":"end_pos_z"},"link":null},{"localized_name":"end_look_at_x","name":"end_look_at_x","type":"FLOAT","widget":{"name":"end_look_at_x"},"link":null},{"localized_name":"end_look_at_y","name":"end_look_at_y","type":"FLOAT","widget":{"name":"end_look_at_y"},"link":null},{"localized_name":"end_look_at_z","name":"end_look_at_z","type":"FLOAT","widget":{"name":"end_look_at_z"},"link":null},{"localized_name":"end_fov","name":"end_fov","type":"FLOAT","widget":{"name":"end_fov"},"link":null}],"outputs":[{"localized_name":"CAMERA_SEQUENCE","name":"CAMERA_SEQUENCE","type":"CAMERA_SEQUENCE","links":[80]}],"properties":{"Node name for S&R":"RenderFormerCameraTarget","widget_ue_connectable":{}},"widgets_values":[0,-1.0300000000000002,0,0,0,0,48],"color":"#FDC501","bgcolor":"#111417"},{"id":64,"type":"RenderFormerLightingTarget","pos":[2830,1470],"size":[287.404296875,226],"flags":{},"order":22,"mode":0,"inputs":[{"localized_name":"start_lighting","name":"start_lighting","type":"LIGHTING","link":113},{"localized_name":"end_pos_x","name":"end_pos_x","type":"FLOAT","widget":{"name":"end_pos_x"},"link":null},{"localized_name":"end_pos_y","name":"end_pos_y","type":"FLOAT","widget":{"name":"end_pos_y"},"link":null},{"localized_name":"end_pos_z","name":"end_pos_z","type":"FLOAT","widget":{"name":"end_pos_z"},"link":null},{"localized_name":"end_rot_x","name":"end_rot_x","type":"FLOAT","widget":{"name":"end_rot_x"},"link":null},{"localized_name":"end_rot_y","name":"end_rot_y","type":"FLOAT","widget":{"name":"end_rot_y"},"link":null},{"localized_name":"end_rot_z","name":"end_rot_z","type":"FLOAT","widget":{"name":"end_rot_z"},"link":null},{"localized_name":"end_scale","name":"end_scale","type":"FLOAT","widget":{"name":"end_scale"},"link":null},{"localized_name":"end_emissive_strength","name":"end_emissive_strength","type":"FLOAT","widget":{"name":"end_emissive_strength"},"link":null}],"outputs":[{"localized_name":"LIGHTING","name":"LIGHTING","type":"LIGHTING","links":[114]}],"properties":{"Node name for S&R":"RenderFormerLightingTarget","widget_ue_connectable":{}},"widgets_values":[-0.5090000000000001,0,2.1,0,0,0,2.5,330],"color":"#FDC501","bgcolor":"#111417"},{"id":62,"type":"RenderFormerLightingTarget","pos":[2830,1760],"size":[287.404296875,226],"flags":{},"order":23,"mode":0,"inputs":[{"localized_name":"start_lighting","name":"start_lighting","type":"LIGHTING","link":109},{"localized_name":"end_pos_x","name":"end_pos_x","type":"FLOAT","widget":{"name":"end_pos_x"},"link":null},{"localized_name":"end_pos_y","name":"end_pos_y","type":"FLOAT","widget":{"name":"end_pos_y"},"link":null},{"localized_name":"end_pos_z","name":"end_pos_z","type":"FLOAT","widget":{"name":"end_pos_z"},"link":null},{"localized_name":"end_rot_x","name":"end_rot_x","type":"FLOAT","widget":{"name":"end_rot_x"},"link":null},{"localized_name":"end_rot_y","name":"end_rot_y","type":"FLOAT","widget":{"name":"end_rot_y"},"link":null},{"localized_name":"end_rot_z","name":"end_rot_z","type":"FLOAT","widget":{"name":"end_rot_z"},"link":null},{"localized_name":"end_scale","name":"end_scale","type":"FLOAT","widget":{"name":"end_scale"},"link":null},{"localized_name":"end_emissive_strength","name":"end_emissive_strength","type":"FLOAT","widget":{"name":"end_emissive_strength"},"link":null}],"outputs":[{"localized_name":"LIGHTING","name":"LIGHTING","type":"LIGHTING","links":[110]}],"properties":{"Node name for S&R":"RenderFormerLightingTarget","widget_ue_connectable":{}},"widgets_values":[1.6300000000000003,-1.1100000000000003,2.1,0,0,0,2.5,400],"color":"#FDC501","bgcolor":"#111417"},{"id":61,"type":"RenderFormerLightingCombine","pos":[3190,1170],"size":[290,166],"flags":{},"order":25,"mode":0,"inputs":[{"localized_name":"lighting_1","name":"lighting_1","shape":7,"type":"LIGHTING","link":114},{"localized_name":"lighting_2","name":"lighting_2","shape":7,"type":"LIGHTING","link":110},{"localized_name":"lighting_3","name":"lighting_3","shape":7,"type":"LIGHTING","link":null},{"localized_name":"lighting_4","name":"lighting_4","shape":7,"type":"LIGHTING","link":null},{"localized_name":"lighting_5","name":"lighting_5","shape":7,"type":"LIGHTING","link":null},{"localized_name":"lighting_6","name":"lighting_6","shape":7,"type":"LIGHTING","link":null},{"localized_name":"lighting_7","name":"lighting_7","shape":7,"type":"LIGHTING","link":null},{"localized_name":"lighting_8","name":"lighting_8","shape":7,"type":"LIGHTING","link":null}],"outputs":[{"localized_name":"LIGHTING","name":"LIGHTING","type":"LIGHTING","links":[112]},{"localized_name":"LIGHTING_SEQUENCE","name":"LIGHTING_SEQUENCE","type":"LIGHTING","links":[111]}],"properties":{"Node name for S&R":"RenderFormerLightingCombine","widget_ue_connectable":{}},"widgets_values":[],"color":"#FDC501","bgcolor":"#111417"},{"id":65,"type":"Reroute","pos":[3020,1638.8817138671875],"size":[75,26],"flags":{},"order":17,"mode":0,"inputs":[{"name":"","type":"*","widget":{"name":"value"},"link":null}],"outputs":[{"name":"","type":"*","links":[115]}],"properties":{"showOutputText":false,"horizontal":false,"widget_ue_connectable":{}}},{"id":7,"type":"MarkdownNote","pos":[1320,970],"size":[1800,120],"flags":{},"order":18,"mode":0,"inputs":[],"outputs":[],"properties":{"widget_ue_connectable":{}},"widgets_values":["# II\n\n## Inputs\n\nYour 3d models goes here. Define Materials per Mesh Loader or Overwrite anothers Mesh Loader by using the *MATERIAL* in-/output."],"color":"#222","bgcolor":"#000"},{"id":29,"type":"RenderFormerSceneBuilder","pos":[3190,1410],"size":[290,162],"flags":{},"order":28,"mode":0,"inputs":[{"localized_name":"mesh","name":"mesh","type":"MESH","link":33},{"localized_name":"lighting","name":"lighting","type":"LIGHTING","link":112},{"localized_name":"camera","name":"camera","type":"CAMERA","link":95},{"localized_name":"camera_sequence","name":"camera_sequence","shape":7,"type":"CAMERA_SEQUENCE","link":80},{"localized_name":"lighting_sequence","name":"lighting_sequence","shape":7,"type":"LIGHTING","link":111},{"localized_name":"num_frames","name":"num_frames","shape":7,"type":"INT","widget":{"name":"num_frames"},"link":null},{"localized_name":"add_default_background","name":"add_default_background","shape":7,"type":"BOOLEAN","widget":{"name":"add_default_background"},"link":null}],"outputs":[{"localized_name":"SCENE","name":"SCENE","type":"SCENE","links":[87]},{"localized_name":"SCENE_SEQUENCE","name":"SCENE_SEQUENCE","type":"SCENE_SEQUENCE","links":[101]}],"properties":{"Node name for S&R":"RenderFormerSceneBuilder","widget_ue_connectable":{}},"widgets_values":[60,false],"color":"#FDC501","bgcolor":"#111417"}],"links":[[33,20,0,29,0,"MESH"],[55,10,0,38,0,"MODEL"],[63,34,0,42,0,"VIDEO"],[64,47,0,45,0,"MESH"],[65,43,0,45,1,"MESH"],[66,44,0,45,2,"MESH"],[67,46,0,45,3,"MESH"],[68,53,0,48,0,"MESH"],[71,51,0,48,3,"MESH"],[76,28,1,43,0,"MATERIAL"],[80,32,0,29,3,"CAMERA_SEQUENCE"],[87,29,0,38,1,"SCENE"],[88,38,0,16,0,"IMAGE"],[90,28,0,20,0,"MESH"],[91,17,0,20,1,"MESH"],[92,52,0,20,2,"MESH"],[93,45,0,20,3,"MESH"],[94,48,0,20,4,"MESH"],[95,55,0,29,2,"CAMERA"],[96,55,0,32,0,"CAMERA"],[98,56,0,48,2,"MESH"],[99,57,0,48,1,"MESH"],[101,29,1,38,2,"SCENE_SEQUENCE"],[102,38,1,34,0,"IMAGE"],[103,58,2,28,2,"STRING"],[109,63,0,62,0,"LIGHTING"],[110,62,0,61,1,"LIGHTING"],[111,61,1,29,4,"LIGHTING"],[112,61,0,29,1,"LIGHTING"],[113,54,0,64,0,"LIGHTING"],[114,64,0,61,0,"LIGHTING"],[115,65,0,38,3,"INT"]],"groups":[],"config":{},"extra":{"ue_links":[],"ds":{"scale":0.8669438814834044,"offset":[-1523.54859919608,-974.6320117318908]},"links_added_by_ue":[]},"version":0.4} \ No newline at end of file diff --git a/example_workflows/ph_renderformer_basic_01.json b/example_workflows/ph_renderformer_basic_01.json index 8b3f3e0..cec9c22 100644 --- a/example_workflows/ph_renderformer_basic_01.json +++ b/example_workflows/ph_renderformer_basic_01.json @@ -1 +1 @@ -{"id":"d7353e51-8ffd-411d-bbb4-c3f7f1dc4f10","revision":0,"last_node_id":58,"last_link_id":107,"nodes":[{"id":10,"type":"RenderFormerModelLoader","pos":[1880,1170],"size":[299.8785095214844,82],"flags":{},"order":0,"mode":0,"inputs":[{"localized_name":"model_id","name":"model_id","type":"STRING","widget":{"name":"model_id"},"link":null},{"localized_name":"precision","name":"precision","type":"COMBO","widget":{"name":"precision"},"link":null}],"outputs":[{"localized_name":"MODEL","name":"MODEL","type":"MODEL","links":[55]}],"properties":{"Node name for S&R":"RenderFormerModelLoader","widget_ue_connectable":{}},"widgets_values":["microsoft/renderformer-v1.1-swin-large","fp32"],"color":"#FDC501","bgcolor":"#111417"},{"id":9,"type":"MarkdownNote","pos":[3230,970],"size":[760,120],"flags":{},"order":1,"mode":0,"inputs":[],"outputs":[],"properties":{"widget_ue_connectable":{}},"widgets_values":["# IV\n\n## Output\n\nEnjoy."],"color":"#222","bgcolor":"#000"},{"id":8,"type":"MarkdownNote","pos":[2870,970],"size":[290,120],"flags":{},"order":2,"mode":0,"inputs":[],"outputs":[],"properties":{"widget_ue_connectable":{}},"widgets_values":["# III\n\n## Config & Processing\n\nConfiguration settings for sampling."],"color":"#222","bgcolor":"#000"},{"id":7,"type":"MarkdownNote","pos":[2250,970],"size":[550,120],"flags":{},"order":3,"mode":0,"inputs":[],"outputs":[],"properties":{"widget_ue_connectable":{}},"widgets_values":["# II\n\n## Inputs\n\nYour 3d models goes here. Define Materials per Mesh Loader or Overwrite anothers Mesh Loader by using the *MATERIAL* in-/output."],"color":"#222","bgcolor":"#000"},{"id":6,"type":"MarkdownNote","pos":[1870,970],"size":[310,120],"flags":{},"order":4,"mode":0,"inputs":[],"outputs":[],"properties":{"widget_ue_connectable":{}},"widgets_values":["# I\n\n## Model Loaders\n\nLoad and use your favorit model and clip."],"color":"#222","bgcolor":"#000"},{"id":16,"type":"SaveImage","pos":[3230,1170],"size":[760,740],"flags":{},"order":11,"mode":0,"inputs":[{"localized_name":"images","name":"images","type":"IMAGE","link":88},{"localized_name":"filename_prefix","name":"filename_prefix","type":"STRING","widget":{"name":"filename_prefix"},"link":null}],"outputs":[],"properties":{"cnr_id":"comfy-core","ver":"0.3.42","Node name for S&R":"SaveImage","widget_ue_connectable":{}},"widgets_values":["RenderFormer"]},{"id":55,"type":"RenderFormerCamera","pos":[2530,1170],"size":[270,202],"flags":{},"order":5,"mode":0,"inputs":[{"localized_name":"camera_pos_x","name":"camera_pos_x","type":"FLOAT","widget":{"name":"camera_pos_x"},"link":null},{"localized_name":"camera_pos_y","name":"camera_pos_y","type":"FLOAT","widget":{"name":"camera_pos_y"},"link":null},{"localized_name":"camera_pos_z","name":"camera_pos_z","type":"FLOAT","widget":{"name":"camera_pos_z"},"link":null},{"localized_name":"camera_look_at_x","name":"camera_look_at_x","type":"FLOAT","widget":{"name":"camera_look_at_x"},"link":null},{"localized_name":"camera_look_at_y","name":"camera_look_at_y","type":"FLOAT","widget":{"name":"camera_look_at_y"},"link":null},{"localized_name":"camera_look_at_z","name":"camera_look_at_z","type":"FLOAT","widget":{"name":"camera_look_at_z"},"link":null},{"localized_name":"fov","name":"fov","type":"FLOAT","widget":{"name":"fov"},"link":null}],"outputs":[{"localized_name":"CAMERA","name":"CAMERA","type":"CAMERA","links":[95]}],"properties":{"Node name for S&R":"RenderFormerCamera","widget_ue_connectable":{}},"widgets_values":[0,-2,0,0,0,0,37.5],"color":"#FDC501","bgcolor":"#111417"},{"id":54,"type":"RenderFormerLighting","pos":[2530,1440],"size":[270,250],"flags":{},"order":6,"mode":0,"inputs":[{"localized_name":"emissive_rgb","name":"emissive_rgb","type":"STRING","widget":{"name":"emissive_rgb"},"link":null},{"localized_name":"emissive_strength","name":"emissive_strength","type":"FLOAT","widget":{"name":"emissive_strength"},"link":null},{"localized_name":"trans_x","name":"trans_x","type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","type":"FLOAT","widget":{"name":"scale"},"link":null}],"outputs":[{"localized_name":"LIGHTING","name":"LIGHTING","type":"LIGHTING","links":[89]}],"properties":{"Node name for S&R":"RenderFormerLighting","widget_ue_connectable":{}},"widgets_values":["255, 255, 255",3000,0,0,2.1,0,0,0,2.5],"color":"#FDC501","bgcolor":"#111417"},{"id":38,"type":"RenderFormerGenerator","pos":[2869.9384765625,1344.4462890625],"size":[280,146],"flags":{},"order":10,"mode":0,"inputs":[{"localized_name":"model","name":"model","type":"MODEL","link":55},{"localized_name":"scene","name":"scene","shape":7,"type":"SCENE","link":87},{"localized_name":"scene_sequence","name":"scene_sequence","shape":7,"type":"SCENE_SEQUENCE","link":null},{"localized_name":"resolution","name":"resolution","type":"INT","widget":{"name":"resolution"},"link":null},{"localized_name":"tone_mapper","name":"tone_mapper","type":"COMBO","widget":{"name":"tone_mapper"},"link":null},{"localized_name":"resolution_vid","name":"resolution_vid","shape":7,"type":"INT","widget":{"name":"resolution_vid"},"link":null}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"IMAGE","links":[88]},{"localized_name":"IMAGES","name":"IMAGES","type":"IMAGE","links":[]}],"properties":{"Node name for S&R":"RenderFormerGenerator","widget_ue_connectable":{}},"widgets_values":[448,"agx",512],"color":"#FDC501","bgcolor":"#111417"},{"id":29,"type":"RenderFormerSceneBuilder","pos":[2871.195556640625,1167.0233154296875],"size":[280,118],"flags":{},"order":9,"mode":0,"inputs":[{"localized_name":"mesh","name":"mesh","type":"MESH","link":107},{"localized_name":"lighting","name":"lighting","type":"LIGHTING","link":89},{"localized_name":"camera","name":"camera","shape":7,"type":"CAMERA","link":95},{"localized_name":"camera_sequence","name":"camera_sequence","shape":7,"type":"CAMERA_SEQUENCE","link":null},{"localized_name":"add_default_background","name":"add_default_background","shape":7,"type":"BOOLEAN","widget":{"name":"add_default_background"},"link":null}],"outputs":[{"localized_name":"SCENE","name":"SCENE","type":"SCENE","links":[87]},{"localized_name":"SCENE_SEQUENCE","name":"SCENE_SEQUENCE","type":"SCENE_SEQUENCE","links":[]}],"properties":{"Node name for S&R":"RenderFormerSceneBuilder","widget_ue_connectable":{}},"widgets_values":[true],"color":"#FDC501","bgcolor":"#111417"},{"id":28,"type":"RenderFormerLoadMesh","pos":[2223.19970703125,1159.6875],"size":[216.53378295898438,589],"flags":{"collapsed":false},"order":7,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[106]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["phrenderformertest_00.obj","",true,-0.05300000000000001,0,0,29.1,18.5,142.70000000000002,1,"223, 168, 0","5,5,5",0.10000000000000002,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":58,"type":"RenderFormerRandomizeColors","pos":[2198.87353515625,1828.2633056640625],"size":[292.0787048339844,130],"flags":{},"order":8,"mode":0,"inputs":[{"localized_name":"mesh","name":"mesh","type":"MESH","link":106},{"localized_name":"mode","name":"mode","type":"COMBO","widget":{"name":"mode"},"link":null},{"localized_name":"seed","name":"seed","type":"INT","widget":{"name":"seed"},"link":null},{"localized_name":"max_brightness","name":"max_brightness","type":"FLOAT","widget":{"name":"max_brightness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[107]}],"properties":{"Node name for S&R":"RenderFormerRandomizeColors","widget_ue_connectable":{}},"widgets_values":["per-object",71772852535924,"randomize",1],"color":"#FDC501","bgcolor":"#111417"}],"links":[[55,10,0,38,0,"MODEL"],[87,29,0,38,1,"SCENE"],[88,38,0,16,0,"IMAGE"],[89,54,0,29,1,"LIGHTING"],[95,55,0,29,2,"CAMERA"],[106,28,0,58,0,"MESH"],[107,58,0,29,0,"MESH"]],"groups":[],"config":{},"extra":{"ue_links":[],"ds":{"scale":0.8746316995520491,"offset":[-1602.0506732576443,-723.7983875051242]},"links_added_by_ue":[]},"version":0.4} \ No newline at end of file +{"id":"d7353e51-8ffd-411d-bbb4-c3f7f1dc4f10","revision":0,"last_node_id":58,"last_link_id":108,"nodes":[{"id":10,"type":"RenderFormerModelLoader","pos":[1880,1170],"size":[299.8785095214844,82],"flags":{},"order":0,"mode":0,"inputs":[{"localized_name":"model_id","name":"model_id","type":"STRING","widget":{"name":"model_id"},"link":null},{"localized_name":"precision","name":"precision","type":"COMBO","widget":{"name":"precision"},"link":null}],"outputs":[{"localized_name":"MODEL","name":"MODEL","type":"MODEL","links":[55]}],"properties":{"Node name for S&R":"RenderFormerModelLoader","widget_ue_connectable":{}},"widgets_values":["microsoft/renderformer-v1.1-swin-large","fp32"],"color":"#FDC501","bgcolor":"#111417"},{"id":9,"type":"MarkdownNote","pos":[3230,970],"size":[760,120],"flags":{},"order":1,"mode":0,"inputs":[],"outputs":[],"properties":{"widget_ue_connectable":{}},"widgets_values":["# IV\n\n## Output\n\nEnjoy."],"color":"#222","bgcolor":"#000"},{"id":8,"type":"MarkdownNote","pos":[2870,970],"size":[290,120],"flags":{},"order":2,"mode":0,"inputs":[],"outputs":[],"properties":{"widget_ue_connectable":{}},"widgets_values":["# III\n\n## Config & Processing\n\nConfiguration settings for sampling."],"color":"#222","bgcolor":"#000"},{"id":7,"type":"MarkdownNote","pos":[2250,970],"size":[550,120],"flags":{},"order":3,"mode":0,"inputs":[],"outputs":[],"properties":{"widget_ue_connectable":{}},"widgets_values":["# II\n\n## Inputs\n\nYour 3d models goes here. Define Materials per Mesh Loader or Overwrite anothers Mesh Loader by using the *MATERIAL* in-/output."],"color":"#222","bgcolor":"#000"},{"id":6,"type":"MarkdownNote","pos":[1870,970],"size":[310,120],"flags":{},"order":4,"mode":0,"inputs":[],"outputs":[],"properties":{"widget_ue_connectable":{}},"widgets_values":["# I\n\n## Model Loaders\n\nLoad and use your favorit model and clip."],"color":"#222","bgcolor":"#000"},{"id":16,"type":"SaveImage","pos":[3230,1170],"size":[760,740],"flags":{},"order":10,"mode":0,"inputs":[{"localized_name":"images","name":"images","type":"IMAGE","link":88},{"localized_name":"filename_prefix","name":"filename_prefix","type":"STRING","widget":{"name":"filename_prefix"},"link":null}],"outputs":[],"properties":{"cnr_id":"comfy-core","ver":"0.3.42","Node name for S&R":"SaveImage","widget_ue_connectable":{}},"widgets_values":["RenderFormer"]},{"id":55,"type":"RenderFormerCamera","pos":[2530,1170],"size":[270,202],"flags":{},"order":5,"mode":0,"inputs":[{"localized_name":"camera_pos_x","name":"camera_pos_x","type":"FLOAT","widget":{"name":"camera_pos_x"},"link":null},{"localized_name":"camera_pos_y","name":"camera_pos_y","type":"FLOAT","widget":{"name":"camera_pos_y"},"link":null},{"localized_name":"camera_pos_z","name":"camera_pos_z","type":"FLOAT","widget":{"name":"camera_pos_z"},"link":null},{"localized_name":"camera_look_at_x","name":"camera_look_at_x","type":"FLOAT","widget":{"name":"camera_look_at_x"},"link":null},{"localized_name":"camera_look_at_y","name":"camera_look_at_y","type":"FLOAT","widget":{"name":"camera_look_at_y"},"link":null},{"localized_name":"camera_look_at_z","name":"camera_look_at_z","type":"FLOAT","widget":{"name":"camera_look_at_z"},"link":null},{"localized_name":"fov","name":"fov","type":"FLOAT","widget":{"name":"fov"},"link":null}],"outputs":[{"localized_name":"CAMERA","name":"CAMERA","type":"CAMERA","links":[95]}],"properties":{"Node name for S&R":"RenderFormerCamera","widget_ue_connectable":{}},"widgets_values":[0,-2,0,0,0,0,37.5],"color":"#FDC501","bgcolor":"#111417"},{"id":54,"type":"RenderFormerLighting","pos":[2530,1440],"size":[270,250],"flags":{},"order":6,"mode":0,"inputs":[{"localized_name":"emissive_rgb","name":"emissive_rgb","type":"STRING","widget":{"name":"emissive_rgb"},"link":null},{"localized_name":"emissive_strength","name":"emissive_strength","type":"FLOAT","widget":{"name":"emissive_strength"},"link":null},{"localized_name":"light_pos_x","name":"light_pos_x","type":"FLOAT","widget":{"name":"light_pos_x"},"link":null},{"localized_name":"light_pos_y","name":"light_pos_y","type":"FLOAT","widget":{"name":"light_pos_y"},"link":null},{"localized_name":"light_pos_z","name":"light_pos_z","type":"FLOAT","widget":{"name":"light_pos_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"trans_y","name":"trans_y","type":"FLOAT","widget":{"name":"trans_y"},"link":null}],"outputs":[{"localized_name":"LIGHTING","name":"LIGHTING","type":"LIGHTING","links":[89]}],"properties":{"Node name for S&R":"RenderFormerLighting","widget_ue_connectable":{}},"widgets_values":["255, 255, 255",3000,0,0,2.1,0,0,0,2.5],"color":"#FDC501","bgcolor":"#111417"},{"id":28,"type":"RenderFormerLoadMesh","pos":[2250,1170],"size":[216.53378295898438,589],"flags":{"collapsed":false},"order":7,"mode":0,"inputs":[{"localized_name":"material","name":"material","shape":7,"type":"MATERIAL","link":null},{"localized_name":"mesh","name":"mesh","type":"COMBO","widget":{"name":"mesh"},"link":null},{"localized_name":"mesh_path","name":"mesh_path","shape":7,"type":"STRING","widget":{"name":"mesh_path"},"link":null},{"localized_name":"normalize_mesh","name":"normalize_mesh","shape":7,"type":"BOOLEAN","widget":{"name":"normalize_mesh"},"link":null},{"localized_name":"trans_x","name":"trans_x","shape":7,"type":"FLOAT","widget":{"name":"trans_x"},"link":null},{"localized_name":"trans_y","name":"trans_y","shape":7,"type":"FLOAT","widget":{"name":"trans_y"},"link":null},{"localized_name":"trans_z","name":"trans_z","shape":7,"type":"FLOAT","widget":{"name":"trans_z"},"link":null},{"localized_name":"rot_x","name":"rot_x","shape":7,"type":"FLOAT","widget":{"name":"rot_x"},"link":null},{"localized_name":"rot_y","name":"rot_y","shape":7,"type":"FLOAT","widget":{"name":"rot_y"},"link":null},{"localized_name":"rot_z","name":"rot_z","shape":7,"type":"FLOAT","widget":{"name":"rot_z"},"link":null},{"localized_name":"scale","name":"scale","shape":7,"type":"FLOAT","widget":{"name":"scale"},"link":null},{"localized_name":"diffuse_rgb","name":"diffuse_rgb","shape":7,"type":"STRING","widget":{"name":"diffuse_rgb"},"link":null},{"localized_name":"specular_rgb","name":"specular_rgb","shape":7,"type":"STRING","widget":{"name":"specular_rgb"},"link":null},{"localized_name":"roughness","name":"roughness","shape":7,"type":"FLOAT","widget":{"name":"roughness"},"link":null}],"outputs":[{"localized_name":"MESH","name":"MESH","type":"MESH","links":[108]},{"localized_name":"MATERIAL","name":"MATERIAL","type":"MATERIAL","links":[]}],"properties":{"Node name for S&R":"RenderFormerLoadMesh","widget_ue_connectable":{}},"widgets_values":["phrenderformertest_00.obj","",true,-0.05300000000000001,0,0,29.1,18.5,142.70000000000002,1,"223, 168, 0","5,5,5",0.10000000000000002,"image",null],"color":"#FDC501","bgcolor":"#111417"},{"id":38,"type":"RenderFormerGenerator","pos":[2871.196044921875,1388.4647216796875],"size":[280,146],"flags":{},"order":9,"mode":0,"inputs":[{"localized_name":"model","name":"model","type":"MODEL","link":55},{"localized_name":"scene","name":"scene","shape":7,"type":"SCENE","link":87},{"localized_name":"scene_sequence","name":"scene_sequence","shape":7,"type":"SCENE_SEQUENCE","link":null},{"localized_name":"resolution","name":"resolution","type":"INT","widget":{"name":"resolution"},"link":null},{"localized_name":"tone_mapper","name":"tone_mapper","type":"COMBO","widget":{"name":"tone_mapper"},"link":null},{"localized_name":"resolution_vid","name":"resolution_vid","shape":7,"type":"INT","widget":{"name":"resolution_vid"},"link":null}],"outputs":[{"localized_name":"IMAGE","name":"IMAGE","type":"IMAGE","links":[88]},{"localized_name":"IMAGES","name":"IMAGES","type":"IMAGE","links":[]}],"properties":{"Node name for S&R":"RenderFormerGenerator","widget_ue_connectable":{}},"widgets_values":[512,"agx",512],"color":"#FDC501","bgcolor":"#111417"},{"id":29,"type":"RenderFormerSceneBuilder","pos":[2871.195556640625,1167.0233154296875],"size":[280,162],"flags":{},"order":8,"mode":0,"inputs":[{"localized_name":"mesh","name":"mesh","type":"MESH","link":108},{"localized_name":"lighting","name":"lighting","type":"LIGHTING","link":89},{"localized_name":"camera","name":"camera","type":"CAMERA","link":95},{"localized_name":"camera_sequence","name":"camera_sequence","shape":7,"type":"CAMERA_SEQUENCE","link":null},{"localized_name":"lighting_sequence","name":"lighting_sequence","shape":7,"type":"LIGHTING_SEQUENCE","link":null},{"localized_name":"num_frames","name":"num_frames","shape":7,"type":"INT","widget":{"name":"num_frames"},"link":null},{"localized_name":"add_default_background","name":"add_default_background","shape":7,"type":"BOOLEAN","widget":{"name":"add_default_background"},"link":null}],"outputs":[{"localized_name":"SCENE","name":"SCENE","type":"SCENE","links":[87]},{"localized_name":"SCENE_SEQUENCE","name":"SCENE_SEQUENCE","type":"SCENE_SEQUENCE","links":[]}],"properties":{"Node name for S&R":"RenderFormerSceneBuilder","widget_ue_connectable":{}},"widgets_values":[true,true],"color":"#FDC501","bgcolor":"#111417"}],"links":[[55,10,0,38,0,"MODEL"],[87,29,0,38,1,"SCENE"],[88,38,0,16,0,"IMAGE"],[89,54,0,29,1,"LIGHTING"],[95,55,0,29,2,"CAMERA"],[108,28,0,29,0,"MESH"]],"groups":[],"config":{},"extra":{"ue_links":[],"ds":{"scale":0.7951197268654999,"offset":[-1429.0030973382982,-663.8836516651722]},"links_added_by_ue":[]},"version":0.4} \ No newline at end of file diff --git a/nodes.py b/nodes.py index aeb6c91..b18d629 100644 --- a/nodes.py +++ b/nodes.py @@ -435,9 +435,9 @@ class RenderFormerLightingTarget: return { "required": { "start_lighting": ("LIGHTING",), - "end_pos_x": ("FLOAT", {"default": 0.0, "min": -10.0, "max": 10.0, "step": 0.01}), - "end_pos_y": ("FLOAT", {"default": 0.0, "min": -10.0, "max": 10.0, "step": 0.01}), - "end_pos_z": ("FLOAT", {"default": 2.1, "min": -10.0, "max": 10.0, "step": 0.01}), + "end_pos_x": ("FLOAT", {"default": 0.0, "min": -10.0, "max": 10.0, "step": 0.001}), + "end_pos_y": ("FLOAT", {"default": 0.0, "min": -10.0, "max": 10.0, "step": 0.001}), + "end_pos_z": ("FLOAT", {"default": 2.1, "min": -10.0, "max": 10.0, "step": 0.001}), "end_rot_x": ("FLOAT", {"default": 0.0, "min": -360.0, "max": 360.0, "step": 0.1}), "end_rot_y": ("FLOAT", {"default": 0.0, "min": -360.0, "max": 360.0, "step": 0.1}), "end_rot_z": ("FLOAT", {"default": 0.0, "min": -360.0, "max": 360.0, "step": 0.1}), @@ -446,21 +446,18 @@ class RenderFormerLightingTarget: } } - RETURN_TYPES = ("LIGHTING_SEQUENCE",) + RETURN_TYPES = ("LIGHTING",) FUNCTION = "get_lighting_sequence" CATEGORY = "PHRenderFormer" def get_lighting_sequence(self, start_lighting, end_pos_x, end_pos_y, end_pos_z, end_rot_x, end_rot_y, end_rot_z, end_scale, end_emissive_strength): - # This node receives the single light to be animated. if not start_lighting or not isinstance(start_lighting, list) or not start_lighting[0]: raise Exception("RenderFormerLightingTarget: Invalid start_lighting input.") start_light_def = start_lighting[0] - # Create a deep copy for the end state to ensure complete data isolation. end_light_def = copy.deepcopy(start_light_def) - # Modify the deep-copied data with the new end-state values. end_light_def["transform"]["translation"] = [end_pos_x, end_pos_y, end_pos_z] end_light_def["transform"]["rotation"] = [end_rot_x, end_rot_y, end_rot_z] end_light_def["transform"]["scale"] = [end_scale, end_scale, end_scale] @@ -469,9 +466,12 @@ class RenderFormerLightingTarget: base_color = [c / max(start_emissive) if max(start_emissive) > 0 else 0 for c in start_emissive] end_light_def["material"]["emissive"] = [c * end_emissive_strength for c in base_color] - # The output sequence contains ONLY the start and end states for the animated light. + # The output is a dictionary containing both start and end states. + # It is returned under the generic 'LIGHTING' type to allow it to be connected + # to the Combine node. lighting_output = { - "sequence": [start_light_def, end_light_def] + "start_lights": [start_light_def], + "end_lights": [end_light_def] } return (lighting_output,) @@ -480,56 +480,65 @@ class RenderFormerLightingTarget: class RenderFormerLightingCombine: @classmethod def INPUT_TYPES(cls): + # All inputs are now of the generic 'LIGHTING' type. + # The node's logic will distinguish between static lists and animated dicts. return { "optional": { - "lighting_1": ("*",), "lighting_2": ("*",), "lighting_3": ("*",), "lighting_4": ("*",), - "lighting_5": ("*",), "lighting_6": ("*",), "lighting_7": ("*",), "lighting_8": ("*",), + "lighting_1": ("LIGHTING",), "lighting_2": ("LIGHTING",), + "lighting_3": ("LIGHTING",), "lighting_4": ("LIGHTING",), + "lighting_5": ("LIGHTING",), "lighting_6": ("LIGHTING",), + "lighting_7": ("LIGHTING",), "lighting_8": ("LIGHTING",), } } RETURN_TYPES = ("LIGHTING", "LIGHTING",) - RETURN_NAMES = ("start_frame_lighting", "end_frame_lighting",) + RETURN_NAMES = ("LIGHTING", "LIGHTING_SEQUENCE",) FUNCTION = "combine_lighting" CATEGORY = "PHRenderFormer" def combine_lighting(self, **kwargs): - start_frame_lights = [] - end_frame_lights = [] + all_start_lights = [] + animated_end_map = {} - has_animation = False - - # First pass to gather all lights and check for animations - all_inputs = [] + # First pass: Collect all start lights and map animated end states by UUID for i in range(1, 9): light_input = kwargs.get(f"lighting_{i}") - if light_input: - all_inputs.append(light_input) - if isinstance(light_input, dict) and "sequence" in light_input: - has_animation = True + if not light_input: + continue - # Process all inputs - for light_input in all_inputs: - # It's an animation sequence - if isinstance(light_input, dict) and "sequence" in light_input: - sequence = light_input.get("sequence", []) - if len(sequence) >= 2: - start_frame_lights.append(sequence[0]) - end_frame_lights.append(sequence[1]) - # It's a static light (or list of static lights) + # It's an animation sequence (a dictionary) + if isinstance(light_input, dict): + start_defs = light_input.get("start_lights", []) + end_defs = light_input.get("end_lights", []) + all_start_lights.extend(start_defs) + # Map the end state of each light in the sequence by its UUID + for j, start_def in enumerate(start_defs): + if "ph_uuid" in start_def and j < len(end_defs): + animated_end_map[start_def["ph_uuid"]] = end_defs[j] + + # It's a static light (a list of light definitions) elif isinstance(light_input, list): - for light_def in light_input: - # Add the static light to both start and end frames - start_frame_lights.append(light_def) - if has_animation: - # If we are animating ANY light, static lights must be in the end list too - end_frame_lights.append(copy.deepcopy(light_def)) + all_start_lights.extend(light_input) - # If there was no animation, the end_frame_lights list will be empty. - # In this case, we should return None for the end frame to signal no animation. - if not has_animation: - end_frame_lights = None + # Second pass: Build the end_frame_lights list to ensure 1-to-1 correspondence + all_end_lights = [] + for start_light in all_start_lights: + uuid = start_light.get("ph_uuid") + # If this light has a defined end state in our map, use it. + if uuid and uuid in animated_end_map: + all_end_lights.append(animated_end_map[uuid]) + # Otherwise, it's a static light, so duplicate its start state for the end frame. + else: + all_end_lights.append(copy.deepcopy(start_light)) - return (start_frame_lights, end_frame_lights) + # The combined output is a dictionary, but it's returned as type 'LIGHTING'. + lighting_sequence = { + "start_lights": all_start_lights, + "end_lights": all_end_lights + } + + # Return the start frame lights first (for the top output) and then the full sequence. + return (all_start_lights, lighting_sequence) class RenderFormerSceneBuilder: """ @@ -545,8 +554,8 @@ class RenderFormerSceneBuilder: }, "optional": { "camera_sequence": ("CAMERA_SEQUENCE",), - "end_lighting": ("LIGHTING",), - "lighting_sequence": ("LIGHTING_SEQUENCE",), # For backward compatibility + "camera_sequence": ("CAMERA_SEQUENCE",), + "lighting_sequence": ("LIGHTING",), "num_frames": ("INT", {"default": 1, "min": 1, "max": 1000}), "add_default_background": ("BOOLEAN", {"default": False}), } @@ -556,11 +565,11 @@ class RenderFormerSceneBuilder: FUNCTION = "build_scene" CATEGORY = "PHRenderFormer" - def build_scene(self, mesh, lighting, camera, camera_sequence=None, end_lighting=None, lighting_sequence=None, num_frames=1, add_default_background=False): + def build_scene(self, mesh, lighting, camera, camera_sequence=None, lighting_sequence=None, num_frames=1, add_default_background=False): output_scene = None output_sequence = None - is_animation = num_frames > 1 and (camera_sequence is not None or end_lighting is not None or lighting_sequence is not None) + is_animation = num_frames > 1 and (camera_sequence is not None or lighting_sequence is not None) if not is_animation: # Build a single static scene @@ -568,43 +577,19 @@ class RenderFormerSceneBuilder: output_scene = self._build_single_scene(tmpdir, mesh, camera, lighting, add_default_background) return (output_scene, None) - # --- Animation Sequence Building (High-Performance Tensor Interpolation) --- - print(f"PHRenderFormer: Building video scene with {num_frames} frames using tensor interpolation.") + # --- Animation Sequence Building --- + print(f"PHRenderFormer: Building video scene with {num_frames} frames.") pbar = comfy.utils.ProgressBar(num_frames) # --- Determine Start and End Configurations --- + # The 'camera' and 'lighting' inputs are ALWAYS the start frame. start_cam_config = camera - end_cam_config = camera - if camera_sequence: - start_cam_config = camera_sequence["sequence"][0] - end_cam_config = camera_sequence["sequence"][-1] - start_lighting_config = lighting - end_lighting_config = None # Initialize to None - if end_lighting is not None: - # New, preferred workflow for multi-light animation - end_lighting_config = end_lighting - elif lighting_sequence is not None: - # Old, deprecated workflow for single-light animation - print("PHRenderFormer WARNING: The 'lighting_sequence' input is deprecated. Please use the new 'RenderFormerLightingCombine' node and connect its 'end_frame_lighting' output to the 'end_lighting' input of the Scene Builder for a more robust workflow.") - end_lighting_config = copy.deepcopy(lighting) # Start with a copy of the start lights - start_light_def_anim = lighting_sequence["sequence"][0] - end_light_def_anim = lighting_sequence["sequence"][-1] - anim_light_id = start_light_def_anim.get("ph_uuid") - if anim_light_id: - found = False - for i, light_def in enumerate(end_lighting_config): - if light_def.get("ph_uuid") == anim_light_id: - end_lighting_config[i] = end_light_def_anim - found = True - break - if not found: - print(f"Warning: Animated light with UUID {anim_light_id} not found in the main lighting list.") - - if end_lighting_config is None: - # If no animation data was provided for lighting, the end state is the same as the start - end_lighting_config = start_lighting_config + # The '..._sequence' inputs provide the end frame. If not provided, the end state is the same as the start. + end_cam_config = camera_sequence["sequence"][-1] if camera_sequence and "sequence" in camera_sequence and camera_sequence["sequence"] else start_cam_config + # Check if lighting_sequence is a dictionary (i.e., an animation) before accessing its keys. + end_lighting_config = lighting_sequence["end_lights"] if lighting_sequence and isinstance(lighting_sequence, dict) and "end_lights" in lighting_sequence else start_lighting_config # --- Build Keyframe Scenes in completely isolated directories --- start_scene = None @@ -770,7 +755,7 @@ class RenderFormerSceneBuilder: with h5py.File(h5_buffer, "w") as f: f.create_dataset("triangles", data=all_triangles.astype(np.float32), compression="gzip") f.create_dataset("vn", data=all_vn.astype(np.float32), compression="gzip") - f.create_dataset("texture", data=all_texture.astype(np.float16), compression="gzip") + f.create_dataset("texture", data=all_texture.astype(np.float32), compression="gzip") f.create_dataset("c2w", data=np.stack(all_c2w).astype(np.float32), compression="gzip") f.create_dataset("fov", data=np.array(all_fov).astype(np.float32), compression="gzip") @@ -1070,7 +1055,7 @@ class RenderFormerExampleScene: with h5py.File(output_h5_buffer, "w") as f: f.create_dataset("triangles", data=all_triangles.astype(np.float32), compression="gzip", compression_opts=9) f.create_dataset("vn", data=all_vn.astype(np.float32), compression="gzip", compression_opts=9) - f.create_dataset("texture", data=all_texture.astype(np.float16), compression="gzip", compression_opts=9) + f.create_dataset("texture", data=all_texture.astype(np.float32), compression="gzip", compression_opts=9) f.create_dataset("c2w", data=all_c2w.astype(np.float32), compression="gzip", compression_opts=9) f.create_dataset("fov", data=all_fov.astype(np.float32), compression="gzip", compression_opts=9) @@ -1539,7 +1524,7 @@ class RenderFormerFromJSON: with h5py.File(output_h5_buffer, "w") as f: f.create_dataset("triangles", data=all_triangles.astype(np.float32), compression="gzip", compression_opts=9) f.create_dataset("vn", data=all_vn.astype(np.float32), compression="gzip", compression_opts=9) - f.create_dataset("texture", data=all_texture.astype(np.float16), compression="gzip", compression_opts=9) + f.create_dataset("texture", data=all_texture.astype(np.float32), compression="gzip", compression_opts=9) f.create_dataset("c2w", data=all_c2w.astype(np.float32), compression="gzip", compression_opts=9) f.create_dataset("fov", data=all_fov.astype(np.float32), compression="gzip", compression_opts=9)