Page MenuHome

USD Exporter: removed from experimental features
ClosedPublic

Authored by Sybren A. Stüvel (sybren) on Fri, Jan 3, 5:07 PM.

Details

Summary

There were two reasons the USD Exporter was listed as experimental:

  • Originally there was no deduplication of mesh normals & UV coordinates (resolved in rBf5e00f735106b5ec635806a4c795a2bc46ae8369), and
  • the way materials were exported was incompatible with instancing with USD 19.07. This seems to be resolved with the current version of USD (19.11).

Blender (more specifically, makesdna) doesn't seem to like empty DNA structs, so I couldn't remove all properties from UserDef_Experimental. This is the error I'd get:

ninja: Entering directory `/home/sybren/workspace/blender-git/build_linux/'
[1/678] Generating dna.c, dna_type_offsets.h, dna_verify.c
FAILED: source/blender/makesdna/intern/dna.c source/blender/makesdna/intern/dna_type_offsets.h source/blender/makesdna/intern/dna_verify.c 
cd /home/sybren/workspace/blender-git/build_linux/source/blender/makesdna/intern && /home/sybren/workspace/blender-git/build_linux/bin/makesdna /home/sybren/workspace/blender-git/build_linux/source/blender/makesdna/intern/dna.c /home/sybren/workspace/blender-git/build_linux/source/blender/makesdna/intern/dna_type_offsets.h /home/sybren/workspace/blender-git/build_linux/source/blender/makesdna/intern/dna_verify.c /home/sybren/workspace/blender-git/blender/source/blender/makesdna/
ERROR: still 2 structs unknown
*** Unknown structs :
  UserDef_Experimental
  UserDef
[14/678] Building CXX object source/blender/compositor/CMakeFiles/bf_compositor.dir/nodes/COM_SplitViewerNode.cpp.o
ninja: build stopped: subcommand failed.

Instead I have just kept char _pad0[8]. I'm not sure how this was intended to be after the last experimental feature was removed. This is why I'm asking for a review.

Diff Detail

Repository
rB Blender

Event Timeline

Campbell Barton (campbellbarton) accepted this revision.EditedMon, Jan 6, 3:47 AM

The char _pad0[8] is fine, think we could consider leaving in a dummy experimental option, since adding/removing property declaration, leaving in unused macros... adding/removing panels for every experimental boolean - gets a bit noisy, increases chance of conflicts, and doesn't give a reference for anyone adding an experimental option.

This revision is now accepted and ready to land.Mon, Jan 6, 3:47 AM