Nexus Godot Pipeline
### Blender Addon (nexus_b2g)
- Meshoptimizer extracted from Advanced Options to its own section. Added Live Mesh Optimization preview in the viewport.
- Bundled gltfpack 1.3 for mesh optimization.
- Re-newed **Project Settings** dialog for scene style and export-related project settings. (Under Project Path Section)
- UI polish in the Nexus tab and panels.
### Godot Addon (nexus_importer)
- Fixed editor crash when manually reimporting glTF while inherited or wrapper scene tabs stayed open.
- Re-export/reimport no longer closes open inherited or wrapper scene tabs.
- Outliner: valid collections keep their color tag (no more forced white).
- Hierarchy errors only overlay red; the previous color returns after fixing.
- Duplicate Asset IDs in the same `.blend` are resolved automatically: the canonical collection keeps its id, copies get a new UUID (on load, property edits, and export). **Regenerate Asset ID** is available in Collection Settings. Re-export affected assets after upgrading.
- Moving the Origin Pivot automatically updates collection instances in the viewport after you finish the move.
- Batch export no longer cancels when you press Ctrl+C. Use **Stop Batch Export** or **Esc** to cancel.
- Collection instances duplicated by Array or Geometry Nodes on the instance Empty now export every realized copy. Combined Assets and Levels emit one marker per copy; MultiMesh manifests list every transform. Godot still instances the referenced asset - nothing is baked into a single mesh.
- MultiMesh Analyze in the Nexus tab now detects those Geometry Nodes / Array copies instead of showing "No valid Assets detected" while export still succeeded.
- Animation Library export restores the original armature pose (REST vs POSE) afterwards.
- Failed exports are reported as cancelled; a glTF exporter exception no longer crashes the export run.
- Shader materials re-export after a layout or hash invalidation instead of being skipped as unchanged.
- Compressed mesh optimization is rejected when the file grew after restoring Nexus metadata.
- gltfpack reordering animation channels no longer fails optimization parity.
- Collections nested under Exclude now warn during export instead of staying silent.
- Materials whose export path sits outside the Godot project are no longer skipped as unchanged.
- Texture and index paths are normalized so Linux exports place files correctly.
- Next-to-asset texture layout keeps source subfolders (no more overwrites when two textures share a filename); shared materials use dedicated texture folders under Best Guess.
- Project Paths: added Material Extension option (`.tres` / `.material`, default `.tres`).
- `material_ext` is written into `material_index.json` per material; Blender always exports text `.tres`.
- glTF `gather_material_hook` no longer crashes on Blender 5.2 `InlineShaderNodes`.
- Nested **Levels** export inline again (like nested Assets).
- sticky **asset_id** no longer leak into exports.
- Large Levels are no longer blocked by a thin node-count budget alone.
- SMART batch no longer skips files that still need export (empty `assets` / missing glTFs).
- Safer index writes when Godot is open; clearer batch log after interactive export.
- **Discard Mesh** toggles additional Viewport Display (Wire / Textured).
## [2.0.0] - 2026-07-18
### Blender Addon (nexus_b2g)
- **New Collection Types:** Exclude, Folder, Combined Asset
- **New Root Type:** VehicleBody3D
- **New Collision Type:** SeparationRayShape3D (Use an empty to find this collision type)
- **Breaking:** nested Levels blocked; use new **Combined Asset** type.
- Nested Assets inline are now possible.
- Anim-lib `.res` next to the anim-lib glTF; glTF carries `target_asset_path` for the skeleton.
- Project path presets (1–8); separate Material / Texture Layout (default: Dedicated folder) replaces Resource Layout.
- gltfpack **1.2** with **Clean** / **Compressed** modes, new optimizer options.
- Sync Lights from Godot; extended light metadata/UI (Area, gobos, cull mask, …).
- Shader export: Mix Shader, more nodes (Layer Weight, Sky, Sheen, …), group/displacement support; partial BSDFs warn instead of failing export.
- Fixes: Smart Export skip/hash, curve multi-user bake, visibility, collection name sanitize, shared Level materials, Reference Existing re-export.
- **Geometry Container GLB:** export a shareable `.glb` with materials and textures embedded. Previous binary mode is now **GLB Separate**.
- **Parallel batch export** (opt-in): run several `.blend` files at once via Parallel Workers.
- **Smart batch** skips unchanged files entirely (Force still re-exports everything).
- **Set Defaults** in Project Paths: preferred Scene Style per root type, stored with the Source folder.
- Cleaner batch log (less spam, clearer errors); empty/invalid collections warn or skip without leaving empty folders.
### Godot Addon (nexus_importer)
- Scene Style (generate Wrapper or Inherited) was moved to Blender (Collection Section)
- Anim-lib `.res` from `animation_libs/`; skeleton via `target_asset_path` (legacy fallback kept).
- Faster batch reimport; level/combined instancing waits until dependency scenes exist.
- Nested Asset/Skeletal collections import with their own Godot root type.
- Extended light import (AreaLight3D 4.7+, gobos, visibility/shadow, …).
- Tools → Sanitize orphaned materials.
- Import pipeline fixes (wrappers, Combined before Level, lights metadata).
- Typical **GLB** imports write editable `.tres` materials next to the `.glb`; Nexus Separate still uses the material index.
## [1.5.1] - 2026-05-31
### Blender Addon (nexus_b2g)
- Fixed level export duplicating asset textures and breaking shared materials in Godot.
### Godot Addon (nexus_importer)
- Importer reloads `material_index.json` when the file changes, so material updates apply without restarting the editor.
Blender Addon (nexus_b2g)
Added extended material conversion from Blender shader nodes to Godot shaders.
Updated mesh optimization to gltfpack 1.1 (Safe / Compact modes in UI).
Re-organized target path and export layout options; settings now persist in addon preferences across
.blendfiles.Improved compatibility with third-party glTF export addons
Minor bug and UI fixes.
Godot Addon (nexus_importer)
Import warning when shader materials were exported with an older Blender addon version.
Added
Blender Addon (nexus_b2g)
Flexible Source / Target paths: Each of Source and Target can be resolved either relative to Project Root (recommended monorepo layout: e.g.
src/game) or as an absolute folder on disk. Browse outside Project Root automatically switches the affected side to absolute mode. Preferences JSON export/import is now version 2 and includes the new fields (older JSON files still import with defaults).GLB export (experimental): Geometry Container setting (Quick Export and Advanced → GLTF Settings) chooses glTF Separate (default:
.gltf+ external buffers/textures, texture organize + optional gltfpack) or GLB (single binary file). Asset index validation and manual registration support.glb. gltfpack is skipped for GLB;organize_texturesremains a no-op for.glb. MultiMesh manifest files stay.gltf.
Godot Addon (nexus_importer)
GLB support (experimental): Reads NEXUS metadata from the JSON chunk of
.glbfiles (sameextrascontract as.gltf). Reimport, import config, filesystem context menu, and folder batching treat.glblike.gltf.
Changed
Blender Addon (nexus_b2g)
Project path validation: Target must exist on disk and resolve correctly; absolute Source requires a valid directory when that mode is selected. Project Root remains required for batch export, presets, and related features.
Fixed
Blender Addon (nexus_b2g)
Reference Existing (material):
material_index.jsonentries were overwritten after export with the default generated.trespath, so Godot kept using the wrong resource. The post-pass now only mergessource_blend_file(and name) and leaves**relative_path/content_hash** to the material exporter. The material file browser stores**res://**paths via the same conversion as typed paths.Material export skip logic: When
content_hashalready matched the reference state but**relative_pathin the index was still wrong** (legacy inconsistency), export skipped and never repaired the index. Skip now requires hash match and path match for Reference; for Generate, hash + path + on-disk.trescontent matching a fresh generation (includingnexus_material_id), so stale or incomplete hashes no longer suppress needed writes.
Added
Blender Addon
- Icon Bar: Left-hand vertical icon bar for quick section navigation. Click an icon to select and display the corresponding section (blue highlight). Pin sections to keep them visible (orange/red highlight).
Godot Addon
- Wrapper and Inherited Scenes: The addon can now create both Wrapper Scenes and Inherited Scenes for glTF assets. Scene type is configurable via tools (nexus/import/scene_style); automatic creation uses the selected style. Alternatively, use the FileSystem context menu on glTF files or folders: "Create Nexus Wrapper Scene" or "Create Nexus Inherited Scene" to create the desired scene type on demand.
Fixed
Godot Addon
- Manual Import Mode: glTFs not processed: When Import Mode was set to Manual, glTFs were not interpreted at all
Blender Addon
- Resonance Geometry Dynamic overwritten by Static: When exporting assets with Resonance Geometry set to Dynamic, the value was incorrectly reset to Static in both the UI and the exported glTF. This occurred when update_object_properties reapplied the root-type default (Static for StaticBody/Area) even after the user had explicitly chosen Dynamic. The logic now preserves an explicit Dynamic choice and no longer overwrites it with Static.
Added:
Material Resource Name: Enables Raycast-based surface identification (e.g., footstep sounds, particle FX). Query this in Godot via
get_surface_material(surface_index).resource_name.Collection Presets: Added a new preset bar in the Collection Section for quick application of export settings.
Changed:
Surface Tags have been replaced by Metadata for more flexibility.
"Scan/Refresh All Strips" now automatically removes orphaned settings.
Renamed "Initialize Strips on this Armature" to "Initialize Missing Strip Settings." Strips without a linked action (e.g., Meta strips) now show a hint that they will not be exported.
Fixed:
Asset-ID Duplication: Duplicated collections no longer share the same
asset_id.Mesh Optimizer: Fixed an issue where vertex attributes (like UVs) were lost during optimization.
- added support for Nexus Resonance
Discover more products like this
godot Workflow gamedev gltf Game level design 3D game development blender-to-godot Exporter productivity tool pipeline 3D Game Assets