Blender Git Loki

Blender Git "temp-sybren-usd-patch-02" branch commits.

Page: 2 / 4

December 11, 2019, 15:34 (GMT)
USD: private indicators

No functional changes.
December 5, 2019, 17:32 (GMT)
USD: Fixed export of animated meshes

I missed a bit earlier, when creating the mesh attributes with an explicit
default, causing meshes to be non-animated. Now I use the 'sparse value
writer', as recommended on the USD forum [1], and animated meshes are
properly written once again.

[1] https://groups.google.com/d/msg/usd-interest/cVJv_eDYxZo/oREDDm11AgAJ
December 5, 2019, 17:32 (GMT)
USD: Support '.usd' as export extension (thanks @superfunc) and proper filtering in the file browser
November 29, 2019, 14:16 (GMT)
USD: Allow running unit tests without 'make install' step

When the PXR_PLUGINPATH_NAME environment variable is defined, the USD
library uses it to find its JSON files. This allows the unit tests to
run without having to 'make install' Blender.
November 29, 2019, 13:42 (GMT)
USD: Fixed include path for unit tests, now TBB headers can be found
November 29, 2019, 11:27 (GMT)
USD: fixed paths in usd.diff

I made the previous diff with `git diff` in the USD source, which produced
paths incompatible with the patch command we use to apply it.
November 29, 2019, 10:18 (GMT)
USD: Check location of USD JSON files in unit tests

This commit adds a test to see whether the USD JSON files can be found
and loaded. Simply the ability to create a USD Stage for a specific
filename means that the extension has been recognised by the USD
library, and that a USD plugin has been loaded to write such files.

USD has been patched to not only look in `{exe_directory}/lib/usd`, but
also in `{exe_directory}/../lib/usd`; the latter is required to resolve
the path for test executables in `bin/tests/`.
November 29, 2019, 10:18 (GMT)
Cleanup: USD: remove unused header files
November 28, 2019, 17:40 (GMT)
USD: Windows-specific fixes by @LazyDodo
November 28, 2019, 17:12 (GMT)
USD: removed more designated initializers
November 28, 2019, 17:01 (GMT)
USD: Removed designated initializers as they are not supported in C++11
November 28, 2019, 16:44 (GMT)
USD: renamed `should_export_object` to `mark_as_weak_export`

The old name was confusing. The new name also matches the terminology
used in the HierarchyContext struct. I also added more comments to
clarify the intended functionality.

Note that this inverts the meaning of the returned value.
November 28, 2019, 16:43 (GMT)
USD: Revamped building & bundling process

- USD is now built as monolithic library, instead of 25 smaller
libraries. We were linking all of them as 'whole archive' anyway, so
this doesn't affect the final file size. It does, however, make life
easier with respect to linking order, and handling upstream changes.
- The JSON files required by USD are installed into bin/usd; they are
required on every platform.
- USD is patched so that it finds the aforementioned JSON files in a path
relative to the running executable. When left unpatched, the only way
to influence the search path for those files is to set an environment
variable BEFORE Blender starts (USD uses static initialisers, so by
the time the USD exporter runs, it has already unsuccessfully tried
loading the JSON files, and won't re-investigate that environment
variable ever again).
- USD is patched to have a `PXR_BUILD_USD_TOOLS` CMake option to disable
building the tools in its `bin` directory. This is sent as a pull
request at https://github.com/PixarAnimationStudios/USD/pull/1048
November 28, 2019, 16:43 (GMT)
USD: typedef for std::map<short, pxr::VtIntArray>
November 28, 2019, 16:43 (GMT)
USD: use BKE_object_visibility()
November 28, 2019, 16:43 (GMT)
USD: Avoid crash when USD JSON files cannot be found

USD ships with a set of JSON files that define which formats can be written
and which plugins are required. This is used even when statically building
and only using the default USDA and USDC formats.
November 28, 2019, 16:43 (GMT)
USD: Fixed static library linking on Linux

This may have inadvertently broken things on Windows, I'll work on a better
way soon.
November 28, 2019, 16:43 (GMT)
USD: added explanation of 'USD registry'
November 28, 2019, 16:43 (GMT)
USD: reuse `pxr::TfToken` objects

TfToken objects are not cheap to construct, so we do it once and reuse them.
November 28, 2019, 16:43 (GMT)
USD: replace check_is_transform_animated() with BKE_object_moves_in_time()
Tehnyt: Miika HämäläinenViimeksi päivitetty: 07.11.2014 14:18MiikaH:n Sivut a.k.a. MiikaHweb | 2003-2021