{"id":35211844,"url":"https://github.com/cdordelly/dy_pack_master","last_synced_at":"2026-04-01T17:21:57.900Z","repository":{"id":329333639,"uuid":"1105661401","full_name":"cdordelly/dy_pack_master","owner":"cdordelly","description":"Make Blender project files portable for render farms by localizing dependencies and addons.","archived":false,"fork":false,"pushed_at":"2025-12-29T17:20:36.000Z","size":3334,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-01-01T21:40:20.739Z","etag":null,"topics":["3d","asset-management","blender","blender-addon","collect","localization","pack","pipeline","python","render-farm"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cdordelly.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null},"funding":{"custom":"https://www.paypal.com/paypalme/cdordelly"}},"created_at":"2025-11-28T01:04:24.000Z","updated_at":"2025-12-29T17:20:16.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/cdordelly/dy_pack_master","commit_stats":null,"previous_names":["cdordelly/dy_pack_master"],"tags_count":2,"template":false,"template_full_name":null,"purl":"pkg:github/cdordelly/dy_pack_master","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdordelly%2Fdy_pack_master","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdordelly%2Fdy_pack_master/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdordelly%2Fdy_pack_master/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdordelly%2Fdy_pack_master/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cdordelly","download_url":"https://codeload.github.com/cdordelly/dy_pack_master/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cdordelly%2Fdy_pack_master/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":31018555,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-03-27T03:51:26.850Z","status":"ssl_error","status_checked_at":"2026-03-27T03:51:09.693Z","response_time":164,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["3d","asset-management","blender","blender-addon","collect","localization","pack","pipeline","python","render-farm"],"created_at":"2025-12-29T19:01:27.932Z","updated_at":"2026-03-27T04:10:21.153Z","avatar_url":"https://github.com/cdordelly.png","language":"Python","funding_links":["https://www.paypal.com/paypalme/cdordelly"],"categories":[],"sub_categories":[],"readme":"# dy Pack Master\n\n![License](https://img.shields.io/github/license/cdordelly/dy_pack_master?color=brightgreen)\n![Blender](https://img.shields.io/badge/Blender-4.0%2B-brightgreen)\n![Latest Release](https://img.shields.io/github/v/release/cdordelly/dy_pack_master?color=brightgreen)\n\n**Make Blender projects portable for render farms by localizing assets, addons, and dependencies.**\n\n`dy Pack Master` is a comprehensive tool designed to prepare your Blender projects for distribution or render farm submission. It automates the tedious process of collecting external assets, relinking them to relative paths, and even packing necessary add-ons.\n\n![Demo](img/pack_project_demo.gif)\n\n## Features\n\n### 📦 Pack Project (One-Click)\n\n![Pack Project](img/ui_pack_project.jpg)\n\nThe main tool that automates the entire packing workflow in one click:\n1. Saves the current blend file\n2. Creates a new directory with your configured suffix (e.g., `scene_packed/`)\n3. Packs all blend file resources *(using vanilla Blender pack function)*\n4. Localizes all external assets (images, movies, caches, references, VDBs)\n5. Converts all asset paths to relative paths\n6. Sets render output to relative path\n7. Generates a missing files report\n8. Optionally reopens the original file and opens the output directory\n\n### 🎛️ Custom Pack Project\n\n![Custom Pack Project](img/ui_custom_pack_project.jpg)\n\nConfigure specific localization steps and addon selections before starting the packing process:\n- **File browser** to choose output location and filename\n- **Toggle individual localization steps** on/off:\n  - Images (Sequences \u0026 Movies)\n  - Movie Clips (Video Editor)\n  - Mesh Caches (ABC/USD)\n  - References (Linked .blend files)\n  - VDBs (Volume files)\n  - OCIO Config File\n- **Select add-ons** to localize from a list\n- **Output options**:\n  - Create parent directory (e.g., `my_file/my_file.blend`)\n  - Open directory after pack\n\n### 📁 Asset Localization\nAutomatically copy external files to local subdirectories and relink them using relative paths `//`.\n\n- **Images \u0026 Movies**: Image sequences and movie files from texture nodes\n  - Sequences -\u003e `//sequences/`\n  - Movies -\u003e `//movies/`\n- **Movie Clips**: Video editor clips -\u003e `//movies/`\n- **Alembic \u0026 USD**: Detects `MESH_SEQUENCE_CACHE` modifiers\n  - `.abc` files -\u003e `//abc/`\n  - `.usd`, `.usda`, `.usdc` files -\u003e `//usd/`\n- **OpenVDB**: Detects Volume objects\n  - Handles single files and **sequences** automatically\n  - Copies to `//vdb/`\n- **Linked Libraries**: Localizes linked `.blend` files\n  - Handles duplicate filenames by auto-renaming\n  - Copies to `//references/`\n- **OCIO Configuration**:\n  - Copies your current OCIO configuration (from environment variable)\n  - Copies to `//ocio/`\n\n### 🧩 Localize Add-ons\nBundle specific enabled add-ons with your project to ensure they are available on the render farm.\n- **UI List**: Select which enabled add-ons to pack\n- **Auto-Zip**: Automatically zips the add-on folders\n- **Exclusion List**: Safely ignores core Blender add-ons (You can customize the exclusion list if needed by editing file: `dy_pack_master/addons_exclusion_list.txt`)\n- Copies to `//addons/`\n\n### 🛠️ Tools\n- **Localize OCIO**: Standalone tool to copy OCIO configuration and generate environment scripts\n- **Missing Files Report**: Scans for missing images, libraries, and caches and generates a text report (`missing_files.txt`)\n\n### 📋 Pack Log\nEvery pack operation generates a detailed `pack_log.txt` file containing:\n- Date and time\n- OS and Blender version\n- Source file path\n- Pack directory\n- OCIO configuration\n- Step-by-step progress log\n\n## Installation\n\n### Blender 4.2 and later (Extensions)\n1. Download the repository or release\n2. Drag and drop `dy_pack_master` into Blender, or install via **Preferences \u003e Get Extensions \u003e Install from Disk**\n\n### Legacy Installation (Blender 4.0 - 4.1)\n1. Zip the `dy_pack_master` folder\n2. Go to **Preferences \u003e Add-ons \u003e Install...** and select the zip file\n\n## Preferences\n\nAccess addon preferences in **Edit \u003e Preferences \u003e Add-ons \u003e dy Pack Master**.\n\n![Preferences](img/preferences.jpg)\n\n### UI Settings\n- **Menu Location**: Choose where the addon tools appear:\n  - **3D Viewport Sidebar** (default): Tools appear in the N-Panel\n  - **File \u003e Export**: Tools appear in the File \u003e Export menu\n\n### Packing Settings\n- **Blend File Suffix**: Customize the suffix added to your packed blend file (default: `_packed`)\n  - Example: `scene.blend` → `scene_packed/scene_packed.blend`\n- **Reopen original file after pack**: Automatically reopen the original blend file after packing (default: enabled)\n- **Open directory after pack**: Open the output folder in file explorer after packing (default: enabled)\n\n## UI Locations\n\n### 3D Viewport Sidebar\n\n![UI Sidebar](img/ui_sidebar.jpg)\n\nWhen set menu location to 3D Viewport Sidebar, tools appear in the N-Panel under \"dy Pack Master\" tab:\n- **Export**: Main Pack Project button\n- **Localize Add-ons**: Collapsible section with add-on list and localize button\n- **Tools**: Collapsible section with Custom Pack Project, Localize OCIO, and Missing Files Report\n\n### File \u003e Export Menu\n\n![UI Export](img/ui_export.jpg)\n\nWhen set menu location to File \u003e Export, all tools appear in the File \u003e Export menu:\n- Pack Project\n- Custom Pack Project\n- Localize Add-ons (opens popup dialog)\n- Localize OCIO\n- Missing Files Report\n\n## Python Scripting\n\nYou can use the individual operators in your own Python scripts or automation workflows:\n\n```python\nimport bpy\n\n# Main pack operators\nbpy.ops.dy_pack_master.pack_project()\nbpy.ops.dy_pack_master.custom_pack_project('INVOKE_DEFAULT')\n\n# Individual localization operators\nbpy.ops.dy_pack_master.localize_mesh_cache()\nbpy.ops.dy_pack_master.localize_vdb()\nbpy.ops.dy_pack_master.localize_references()\nbpy.ops.dy_pack_master.localize_ocio()\nbpy.ops.dy_pack_master.localize_addons()\nbpy.ops.dy_pack_master.localize_images()\nbpy.ops.dy_pack_master.localize_movieclips()\n\n# Utility operators\nbpy.ops.dy_pack_master.missing_files_report()\nbpy.ops.dy_pack_master.refresh_addons()\n```\n\n## Output Directory Structure\n\nAfter packing, your project will have a structure like:\n\n```\nscene_packed/\n├── scene_packed.blend\n├── pack_log.txt\n├── sequences/          # Image sequences\n├── movies/             # Movie files\n├── abc/                # Alembic caches\n├── usd/                # USD caches\n├── vdb/                # OpenVDB files\n├── references/         # Linked .blend files\n├── ocio/               # OCIO config (if enabled)\n│   ├── config.ocio\n└── addons/             # Zipped add-ons (if selected)\n```\n\n## Support\n\nIf you find this tool useful, consider supporting its development!\n\n[**☕ Buy me a coffee / Donate**](https://www.paypal.com/paypalme/cdordelly)\n\n## License\nThis project is licensed under the GPL-3.0 License - see the LICENSE file for details.\n\n## Author\nCarlos Dordelly - @cdordelly","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcdordelly%2Fdy_pack_master","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcdordelly%2Fdy_pack_master","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcdordelly%2Fdy_pack_master/lists"}