FBX Bundle

add-ons

(renderhjs) #1

I just released my second Blender addon called ‘FBX Bundle’. It splits selected objects into bundles and allow to export each as its own FBX file. That’s the core functionality, everything else is just to support that workflow.

Download & Documentation
renderhjs.net/fbxbundle

Features

  • Batch Export selected objects as FBX bundles
  • Batch Import 3D files from a folder (fbx, obj, 3ds)
  • Templates for Unity, Unreal and Blender
  • Preview bundles as you select objects
  • Bundle objects by name, group, material or scene
  • Fix Unity rotation, scale and material issues
  • Draw fences around bundles of objects
  • Align pivots to common ground

Drawing Fences Draws grease pencil lines around your selected object bundles.
  • The border uses the padding from the settings
  • The pole represents the bundle origin when exporting FBX files
  • A thin grid is drawn to seperate objects within a bundle

https://farm1.staticflickr.com/866/40806993094_dc2d16dbac_o.png

Ground Pivot
Sets the pivot points of selected objects to the ground of the bounding box of the bundle.

https://farm1.staticflickr.com/861/39761054960_6dd0a411a9_o.gif

Working with Unity

The addon comes with an Unity Editor script which automatically resets the -90 degree rotations and assigns existing materials automatically if the name assigned in blender matches any material name in your Unity project. This script is completely optional and not mandatory at all.

https://farm1.staticflickr.com/934/39760671570_e9bbe13f6c_o.png

The Unity Editor script can automatically assign existing materials if the material names between Blender and the Unity project match.

http://renderhjs.net/blender/fbx_bundle/unity_material_matching.gif

This is an addon that I always wanted for 3dsMax or Blender, a painless stupid simple way to export and update existing FBX files in a project. I have been using variants of this script in the past at work on commercial projects and it saves so much time, all you do is select your objects and press ‘Export’.


Best and fastest workflow from Blender to Unreal Engine?
(Jaydead) #2

This looks like a very handy tool. I’m working with Unreal, but this should work pretty well despite that.

One request that I’d be happy to see is the option to disable exporting of materials, as I texture objects with Substance and it makes each material another textureset. I’d prefer to separate materials by baking an ID map with TexTools. :wink:


(wuren) #3

This looks very handy ! Is it possible to support U4 ? I am using both unity an U4 !
Cheer !


(renderhjs) #4

I have just updated this addon to version 1.1.0

Download & Documentation

Changes

  • Unreal engine target (same as Blender target for now)
  • support for curves, text and meshes
  • new ground pivot tool
  • fixed error from previous release
  • improved documentation

New Ground Pivot tool
Sets the pivot points of selected objects to the ground of the bounding box of the bundle.

https://farm1.staticflickr.com/861/39761054960_6dd0a411a9_o.gif


(wuren) #5

Thanks for your update !
Is it possible to add " Unit Setup Tool " ?
It can setup collect unit for before export to unity or u4 !

Cheers


(wuren) #6

Hi renderhjs
I need some help !
I can not add mulitiply fences ! It looks like the fences will dispear after i select another object hit “Draw fences”
Maybe i miss somthing to make it work?
It is pleasure if you can give us some tutorials!

Cheer!


(StripStrix) #7

Hi , which is the best way to export ? bundle by group ? for optimization , nice.


(renderhjs) #8

Depends on your preference, I assume that a lot of people prefer parenting their objects into a container to define the groups.


(renderhjs) #9

Version 1.2.0 is out!!

Documentation & Source
https://bitbucket.org/renderhjs/blender-addon-fbx-bundle

Download 1.2.0
http://renderhjs.net/blender/fbx_bundle/FBX_Bundle_1.2.0.zip

Pull Requests
For this version I received 3 pull requests by members from this forum and outside. They are:

  • Set pivot at parent location by Idlero. Great feature thanks again!
  • bake space transform by tanitta. Very nice documentation of the changes - I actually made it the default behavior for Unity as it removes the need for the Unity Editor script to nullify the rotations on the unity side of the containers.
  • Fixed scale problem in UNREAL by Shuhei Toyoda. This fixes the scale for Unreal engine export.

Changes

  • New pivot mode: parent pivot
  • Batch import improvements: Catch except for unsupported FBX files (e.g. ASCII FBX assets)
  • Improved Unreal & Unity export settings (scale, units, smoothing groups)
  • Fixed scale for Unreal export
  • Install / uninstall errors fixed
  • New mesh fix tool: Clean up smoothing, uv & topology issues on selected objects
  • Animation detection (keyframes, armature,…) which will avoid collapsing objects to not break animations for export
  • Updated Unity Editor script: No more need to modify object rotations on the Unity side. * Optional script now only matches materials in Unity by material name in Blender.

Upcoming feature: Modifiers
This is something I am working on currently and that I would like to have ready for the next version

Its a non destructive modifier system for the FBX bundles with modular modifiers that can easily be extended in python. Each time you export these modifiers can intercept the about to be exported objects and alter them.

Some of the modifiers that I am looking into:

  • Merge: Merge all objects of the bundle, merge by material etc.
  • Copy modifiers: Have a reference object where all its blender modifiers are copied and applied for the bundle’s objects. This can be useful for some custom mesh compressions.
  • LOD: options for generating LOD objects and bundling within the bundle or as separate files. Both Unity and Unreal have different conventions but the idea would be to automate this with settings for each LOD group.
  • Collider: Generate collider meshes for objects inside the bundle or for the bundle
  • Rename: rename objects of the bundle before exporting. This could be useful to inject custom variables or simplify names for the exported files.

Again still working on this and there are still technical hurdles to solve - but I think that these modifiers will be a great way to boost asset creation.


(ebi) #10

@renderhjs You are doing an amazing work with your addons, love TexTools, love FBX Bundle.


Best and fastest workflow from Blender to Unreal Engine?
(renderhjs) #11

@renderhjs You are doing an amazing work with your addons, love TexTools, love FBX Bundle.

Thanks, good to hear that you are enjoying the addons.

Been working on a new tool “Pack bundles” as I needed this for work recently

It does a binary packing on the selected bundles (not just per object but per bundle). This GIF shows a batch import on assets and then a packing to arrange them in the scene. I am using the ‘by parent’ sorting mode as none of them have a parent to isolate them by object.


#12

Hi renderhjs,

Very nice add-ons 2 questions for you!

1: Is it possible to import all mesh as a individual FBX file. ( Let’s say I have 80 object I would like 80 FBX file with all the origin in the center.

2: I am using UE4 and I would like to know when I export my FBX does it keep the x,y,z coordinate of Blender? Or I do have to replace them in UE4.

I downloaded you’re textools addon but I am not very good at UV or a bit confuse on how to use it to it’s maximum potential. Do you have any ressources to improve my workflow of UV.

Thanks,


(renderhjs) #13

@dalid154

  1. Import all meshes as individual FBX files. That largely depends on the sorting you can apply, e.g. bundle by name, group, parent,… and how much of that applies when you import the fbx files. All the ‘import’ tool does is batch import all FBX, 3ds, OBJ,… files from the specified folder.
  2. I have not tested the Unreal target a lot myself. I have received pull requests that merged into the last release that addressed some scale issues with the Unreal target. I am open for feedback with the Unreal target.

As for resources on UV mapping: Any starter tutorial on UV mapping can be helpful. If you are curious about particular TexTools tools- check out the documentation.

Unfortunately my time is a bit limited these days as I would like to create some videos to cover all of the TexTools tools.


(renderhjs) #14

FBX Bundle 1.5.0 is out!

new website & download
http://renderhjs.net/fbxbundle/

Changes

  • New modifiers system: Any of these active export modifiers are applied upon export
  • New platform system: Unity, Unreal, Collada, glTF
  • glTF support (requires official glTF addon)
  • New pivot mode: Empty plain axis object.
  • Include children: Auto select grouped objects e.g. in scene mode, group mode, parent mode
  • Re-Export button: Re-Exports previous objects again

New Modifiers

  • Rename : Allows to rename the target path or bundle file name. These fields support dynamic variables, dynamic variables are written inside curly brackets { } .
  • Offset transform : Copies the transform offset (move, rotate, scale) of a source object to each item in the bundle.
  • Copy Modifiers : Copies blender modifiers from a source object to all exported objects. For example your source object could contain a triangulate or edge split modifier which would be applied on each object upon export.
  • Merge Meshes : Merges all meshes of a bundle into a single mesh and object. This modifier is ideal for static environment assets.
  • Collider Meshes : Creates an additional collider mesh for each object in a bundle with a simplified geometry.
  • LOD : Also known as level of detail which is a technique used in game engines to optimize performance. This modifier creates a series of copies of each object in your bundle with a reduced triangle count for each LOD step and a name indicating the LOD level.

    LOD levels are previewed in the modifier panel with the compression ratio and LOD level.
  • Vertex AO : This modifier applies vertex color based ambient occlusion to each mesh of a bundle. This is a great way of adding AO depth without the limitation of texture resolution, file or memory size of textures.

    Vertex colors require shaders to fully utilize them.

(Tosky) #15

It specifically focus on static objects or it handle skelet/animations too? Another question: how it behave on meshes with ‘disabled’ modifier(s) during export? Since the ‘official’ OBJ and FBX addons gives an option to apply all modifier(s) expect the ‘hidden ones’ (if you want).


(renderhjs) #16

@Tosky
Many of the modifiers do not work well with animations if not they might be even disabled. E.g. you wouldn’t apply modifiers on your rigged character if you did so manually.
I haven’t tried animations myself but I believe it should be fine - as long as you don’t use FBX bundle modifiers.


(renderhjs) #17

Mike from Grame from Scratch post a video up on his youtube channel where he runs down the features. When I get the time I’ll make a video myself with a actual demo.


#18

Something I dont understand about the add on is if I am starting a new project I have no choice of using Meter as and 1.0 scale? I like exemple working in CM or inch.

Am I missing something?


(ogneed) #19

Hi renderhjs!
Great addon! Do you have any plans to release your useful addon for 2.8?


#20

Update for 2.8? :slight_smile: