Best way to manage FBX exporting a certain set of stuff and not other stuff?

Project is a VRChat world in Unity. Currently doing a workflow of exporting FBX (to Unity) with ‘Visible Objects’ only, in order to exclude some inactive collections with source objects for procedural nodes.

The scene has lots of lights, but their visibility in the editor makes the scene unmanageable, it’s overlapping light cones everywhere, making a spiderweb mess that obscures everything. I used the ‘Selectability and Visibility’ menu to hide lights, which I thought (incorrectly) would not affect the ‘Visible Objects’ filter of the export. But this did exclude all the lights from the export, which caused all the Unity lighting configuration to be deleted. How do I hide the lights in Blender without affecting the FBX export?

Should I move all the ‘hidden’ source objects to a separate root Collection, and switch to using the ‘Active Collection’ FBX filter instead of ‘Visible Objects’? I’d rather keep the inactive collections near their usage in the View tree, but maybe this is the only way to manage it?

I’m paranoid now of having to setup all the Unity lighting configuration for dozens of groups of dozens of lights because they fell out of the export and get their Unity overrides cleared. Hoping for a more foolproof workflow.

View of a stage with lots of lights:

Thanks for reading!

I think you missunderstood collections…

You do not move objects into a collection but simply “enable” that they are in a collection (and possibly multiple ones)… it’s more like tagging them… so they are “in”…

There is an option in the FBX exporter: Include: Limit to Active Collection
So i think you could make a collection named for example export adding everything you want to export…
maybe even using sub-collections to “tag” all objects which should be exported always and those which are only used in this special export “session”…

You can remove it from any collection via Object: Collections… Remove Collection (the X near the colection name)… afterwards… (or delete the entire collection in the outliner without deleting any object…)

Hey thanks for the reply!

You’re right it’s just a tag, but in the ‘View Layer’ tree they appear ‘in’ each other for the purposes of organization, for collections and parent objects.

I’m thinking neither “Visible Objects” or “Active Collection” solve the problem, and I should try exporting everything and deal with extra stuff on the import side.

Notes in case it helps anyone:

Export Visible Objects only Export Active Collection only Export everything
Steps before export: Must ensure the right objects are visible before export. This is mostly verifiable at a glance. Must ensure the ‘export’ collection is active before export. Can’t see at a glance, may be easy to forget to activate the collection and cause the wrong one to be exported. Nothing to manage.
Source instances, like input to ‘instance on points’ node, location is not important: Must be hidden in view, but can be placed anywhere in the tree. Downside is visibility state becomes load bearing. Must be stored outside the ‘export’ collection tree. Downside is they can’t be kept near their usage in the tree. Source props will always export, must be moved outside of the scene space, but can remain anywhere in the main tree. Downside is extra objects are exported and add to scene size on import.
Source meshes, like input to ‘points on faces’ node, location is important: Must be hidden Must be outside active collection Will always export. Maybe able to make Unity delete these upon import.
Everything gets ruined if: If anything is hidden, those Unity overrides will disappear on import. If the wrong collection is active, ALL Unity overrides could disappear on import. Nothing to ruin, all objects always exported. Must delete source meshes after import.

All options have downsides, too bad there isn’t some ‘export’ or ‘exclude from export’ flag we can set.

Solved for now!

You may also think about the manageability of your scene/setup… because the complexity seems to be… “big”… :wink:

How do you mean? Like separating the scene into multiple blend files and separate FBX outputs? It seems like I would have the same problems, just fragmented across multiple places. Sorry if I am missing something…

IDK the context… your description sounds… well… very complex…

Somethign like “(why do you have so much in this scene when you do not use it in the export…” comes to my mind… :person_shrugging: