Skip to content

Commit ad0a0cd

Browse files
committed
v1.1.0
1 parent d81ec82 commit ad0a0cd

File tree

118 files changed

+2179
-579
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

118 files changed

+2179
-579
lines changed

.gitignore

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,4 +53,7 @@ test/assets/fbx/*.usd
5353
test/assets/gltf/*.usd
5454
test/assets/obj/*/*.usd
5555
test/assets/ply/*.usd
56-
test/assets/stl/*.usd
56+
test/assets/stl/*.usd
57+
58+
# Other
59+
.DS_Store

CMakeLists.txt

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,10 +37,12 @@ option(USD_FILEFORMATS_FETCH_DRACO "Forces FetchContent for Draco" OFF)
3737
option(USD_FILEFORMATS_FETCH_ZLIB "Forces FetchContent for Zlib" OFF)
3838
option(USD_FILEFORMATS_FETCH_LIBXML2 "Forces FetchContent for LibXml2" ON)
3939
option(USD_FILEFORMATS_FETCH_HAPPLY "Forces FetchContent for Happly" ON)
40+
option(USD_FILEFORMATS_FETCH_SPHERICAL_HARMONICS "Forces FetchContent for SphericalHarmonics" ON)
4041
option(USD_FILEFORMATS_FETCH_FMT "Forces FetchContent for Fmt" ON)
4142
option(USD_FILEFORMATS_FETCH_FASTFLOAT "Forces FetchContent for FastFLoat" ON)
4243
option(USD_FILEFORMATS_ENABLE_CXX11_ABI "Use the CXX 11 ABI on Linux" OFF)
4344
option(USD_FILEFORMATS_ENABLE_ASM "Enables ASM material representation" OFF)
45+
option(USD_FILEFORMATS_FETCH_SPHERICAL_HARMONICS "Forces FetchContent for SphericalHarmonics" ON)
4446

4547
# This is a future looking option which turns on/off writing MaterialX Shaders
4648
# when importing a file per the OpenPBR spec:

README.md

Lines changed: 24 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22

33
[![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/macOS-14-2411-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml) [![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/macOS-14-2408-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml) [![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/macOS-14-2411-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml)
44

5-
[![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/macOS-13-2411-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml) [![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/macOS-13-2408-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml)[![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/macOS-13-2405-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml) [![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/macOS-13-2311-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml) [![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/macOS-13-2308-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml)
5+
[![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/macOS-13-2405-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml) [![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/macOS-13-2408-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml)[![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/macOS-13-2405-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml) [![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/macOS-13-2311-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml) [![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/macOS-13-2308-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml)
66

77
[![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/ubuntu-22.04-2411-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml) [![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/ubuntu-22.04-2408-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml) [![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/ubuntu-22.04-2405-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml) [![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/ubuntu-22.04-2311-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml) [![](https://img.shields.io/endpoint?url=https://gist.githubusercontent.com/kwblackstone/264643f3d2acacc5369a0ba70854dfb6/raw/ubuntu-22.04-2308-ALL.json)](https://github.com/adobe/USD-Fileformat-plugins/actions/workflows/ci.yml)
88

@@ -41,17 +41,19 @@ The following tools are needed:
4141
The following dependencies are needed:
4242
|Dependency|Version|Affects|Optional|
4343
|--|--|--|--|
44-
| [Pixar USD](https://github.com/PixarAnimationStudios/USD) | 23.08 | all | no |
45-
| [GTest](https://github.com/google/googletest.git) | 1.11.0 | all tests | yes |
46-
| [FBX SDK](https://aps.autodesk.com/developer/overview/fbx-sdk) | 2020.3.7 | usdfbx | no |
47-
| [LibXml2](https://gitlab.gnome.org/GNOME/libxml2) | 2.10.0 | usdfbx | no |
48-
| [Zlib](https://github.com/madler/zlib.git) | 1.2.11 | usdfbx | no |
49-
| [TinyGltf](https://github.com/syoyo/tinygltf) | 2.8.21 | usdgltf | no |
50-
| [Draco](https://github.com/google/draco.git) | 1.56 | usdgltf | yes |
51-
| [Fmt](https://github.com/fmtlib/fmt.git) | 10.1.1 | usdobj | no |
52-
| [FastFloat](https://github.com/lemire/fast_float.git) | 1.1.2 | usdobj | no |
53-
| [Happly](https://github.com/nmwsharp/happly.git) | cfa2611 | usdply | no |
54-
| [Substance](https://developer.adobe.com/substance3d-sdk/) | 9.1.2 | usdsbsar | no |
44+
| [Pixar USD](https://github.com/PixarAnimationStudios/USD) | 23.08 | all | no |
45+
| [GTest](https://github.com/google/googletest.git) | 1.11.0 | all tests | yes |
46+
| [Eigen](https://gitlab.com/libeigen/eigen) | 3.4.0 | usdply | no |
47+
| [FBX SDK](https://aps.autodesk.com/developer/overview/fbx-sdk) | 2020.3.7 | usdfbx | no |
48+
| [LibXml2](https://gitlab.gnome.org/GNOME/libxml2) | 2.10.0 | usdfbx | no |
49+
| [Zlib](https://github.com/madler/zlib.git) | 1.2.11 | usdfbx | no |
50+
| [TinyGltf](https://github.com/syoyo/tinygltf) | 2.8.21 | usdgltf | no |
51+
| [Draco](https://github.com/google/draco.git) | 1.56 | usdgltf | yes |
52+
| [Fmt](https://github.com/fmtlib/fmt.git) | 10.1.1 | usdobj | no |
53+
| [FastFloat](https://github.com/lemire/fast_float.git) | 1.1.2 | usdobj | no |
54+
| [Happly](https://github.com/nmwsharp/happly.git) | cfa2611 | usdply | no |
55+
| [Spherical Harmonics](https://github.com/google/spherical-harmonics) | ccb6c7f | usdply | no |
56+
| [Substance](https://developer.adobe.com/substance3d-sdk/) | 9.1.2 | usdsbsar | no |
5557

5658
## Build
5759

@@ -141,8 +143,6 @@ where:
141143
| -DUSD_FILEFORMATS_FETCH_FASTFLOAT | Forces FetchContent for FastFLoat | ON | usdobj |
142144
| -DUSD_FILEFORMATS_ENABLE_ASM | Generate a ASM based material network on layerwrite | OFF |
143145
144-
Note that `Dpxr_ROOT` is *not* an optional parameter - a reference to the OpenUSD installation path **has** to be passed.
145-
146146
ZLIB, Draco and OpenImageIO packages are hinted to search into the USD installation by default. Override this by setting their ROOT or their FETCH variables (no fetch for OIIO).
147147
148148
The previous commands will place intermediate files into the folder `build` and install binaries into the folder `bin`.
@@ -157,7 +157,7 @@ Also, make the plugins discoverable by USD to complete installation, by adding t
157157
```bash
158158
python ./USD/build_scripts/build_usd.py ./usd-install --build-shared --usd-imaging --tools --generator <GENERATOR> --openimageio --build-variant release
159159
```
160-
#### For Linux/Mac:
160+
#### For Linux:
161161
```bash
162162
python ./USD/build_scripts/build_usd.py ./usd-install --use-cxx11-abi=1 --build-shared --usd-imaging --tools --generator <GENERATOR> --openimageio --build-variant release
163163
```
@@ -175,12 +175,19 @@ Environment Variables
175175
set PATH=%PATH%;.\USD-Fileformat-plugins\bin\bin;.\USD-Fileformat-plugins\bin\plugin\usd
176176
set PXR_PLUGINPATH_NAME=%PXR_PLUGINPATH_NAME%;.\USD-Fileformat-plugins\bin\plugin\usd
177177
```
178-
#### For Linux/Mac
178+
#### For Linux
179179
```bash
180180
export PATH=$PATH:./USD-Fileformat-plugins/bin/bin:./USD-Fileformat-plugins/bin/plugin/usd
181181
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:./USD-Fileformat-plugins/bin/lib:./USD-Fileformat-plugins/bin/lib64
182182
export PXR_PLUGINPATH_NAME=$PXR_PLUGINPATH_NAME:./USD-Fileformat-plugins/bin/plugin/usd
183183
```
184+
#### For Mac
185+
```bash
186+
export PATH=$PATH:./USD-Fileformat-plugins/bin/bin:./USD-Fileformat-plugins/bin/plugin/usd
187+
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:./USD-Fileformat-plugins/bin/lib
188+
export DYLD_LIBRARY_PATH=$DYLD_LIBRARY_PATH:./USD-Fileformat-plugins/bin/lib
189+
export PXR_PLUGINPATH_NAME=$PXR_PLUGINPATH_NAME:./USD-Fileformat-plugins/bin/plugin/usd
190+
```
184191

185192
Or Copy plugins:
186193
* Copy the installed plugins and dependent shared libraries to the specified folder:
@@ -259,4 +266,4 @@ To generate the documentation go to the project root folder and enter:
259266
```
260267
doxygen
261268
```
262-
The resulting documentation will be placed at the `docs` folder.
269+
The resulting documentation will be placed at the `docs` folder.

changelog.txt

Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,30 @@
1+
v1.1.0 January 31st, 2025
2+
fbx:
3+
- add display name to USD to save imported names for export
4+
- import specular roughness from autodesk standard surface
5+
- interpolate diffuse color on export for intermediate metallic values
6+
- avoid creating extra root nodes during import & export
7+
- adjust mesh and mesh instancing setup
8+
gltf:
9+
- add display name to USD to save imported names for export
10+
- ignore invalid indices on export
11+
- adjust mesh and mesh instancing setup
12+
ply:
13+
- add spherical harmonics support
14+
- detect nan values for gsplat opacity and convert to 0
15+
- fix for loading ply files with non-ascii characters in filename
16+
sbsar
17+
- updated the list of sbsar engines for mac x64 to include metal
18+
- add emissive intensity of 1 when we find emissive color
19+
- set scale and bias correctly for normal map reader nodes
20+
utility:
21+
- update required env vars for Mac in Readme
22+
- print OIIO error on failure
23+
- restrict XForm collapsing to DefaultPrim
24+
- usd v24.11 cleanup
25+
- refactor utility exporting, cmake cleanup, rename files, remove extra logs
26+
27+
128
v1.0.10 November 19th, 2024
229
fbx:
330
- small fbx spot light fixes

cmake/CPM.cmake

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
set(CPM_DOWNLOAD_VERSION 0.40.2)
2+
3+
if(CPM_SOURCE_CACHE)
4+
set(CPM_DOWNLOAD_LOCATION "${CPM_SOURCE_CACHE}/cpm/CPM_${CPM_DOWNLOAD_VERSION}.cmake")
5+
elseif(DEFINED ENV{CPM_SOURCE_CACHE})
6+
set(CPM_DOWNLOAD_LOCATION "$ENV{CPM_SOURCE_CACHE}/cpm/CPM_${CPM_DOWNLOAD_VERSION}.cmake")
7+
else()
8+
set(CPM_DOWNLOAD_LOCATION "${CMAKE_BINARY_DIR}/cmake/CPM_${CPM_DOWNLOAD_VERSION}.cmake")
9+
endif()
10+
11+
# Expand relative path. This is important if the provided path contains a tilde (~)
12+
get_filename_component(CPM_DOWNLOAD_LOCATION ${CPM_DOWNLOAD_LOCATION} ABSOLUTE)
13+
14+
function(download_cpm)
15+
message(STATUS "Downloading CPM.cmake to ${CPM_DOWNLOAD_LOCATION}")
16+
file(DOWNLOAD
17+
https://github.com/cpm-cmake/CPM.cmake/releases/download/v${CPM_DOWNLOAD_VERSION}/CPM.cmake
18+
${CPM_DOWNLOAD_LOCATION}
19+
)
20+
endfunction()
21+
22+
if(NOT (EXISTS ${CPM_DOWNLOAD_LOCATION}))
23+
download_cpm()
24+
else()
25+
# resume download if it previously failed
26+
file(READ ${CPM_DOWNLOAD_LOCATION} check)
27+
if("${check}" STREQUAL "")
28+
download_cpm()
29+
endif()
30+
unset(check)
31+
endif()
32+
33+
include(${CPM_DOWNLOAD_LOCATION})

cmake/FindEigen3.cmake

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
if(TARGET Eigen3::Eigen)
2+
return()
3+
endif()
4+
5+
option(EIGEN_WITH_MKL "Use Eigen with MKL" OFF)
6+
option(EIGEN_DONT_VECTORIZE "Disable Eigen vectorization" OFF)
7+
8+
if(EIGEN_ROOT)
9+
message(STATUS "Third-party (external): creating target 'Eigen3::Eigen' for external path: ${EIGEN_ROOT}")
10+
set(EIGEN_INCLUDE_DIRS ${EIGEN_ROOT})
11+
else()
12+
message(STATUS "Third-party (external): creating target 'Eigen3::Eigen'")
13+
14+
include(CPM)
15+
CPMAddPackage(
16+
NAME eigen
17+
GIT_REPOSITORY https://gitlab.com/libeigen/eigen.git
18+
GIT_TAG 3.4.0
19+
DOWNLOAD_ONLY ON
20+
)
21+
set(EIGEN_INCLUDE_DIRS ${eigen_SOURCE_DIR})
22+
23+
install(DIRECTORY ${EIGEN_INCLUDE_DIRS}/Eigen
24+
DESTINATION include
25+
)
26+
endif()
27+
28+
add_library(Eigen3_Eigen INTERFACE)
29+
add_library(Eigen3::Eigen ALIAS Eigen3_Eigen)
30+
31+
include(GNUInstallDirs)
32+
target_include_directories(Eigen3_Eigen SYSTEM INTERFACE
33+
$<BUILD_INTERFACE:${EIGEN_INCLUDE_DIRS}>
34+
$<INSTALL_INTERFACE:${CMAKE_INSTALL_INCLUDEDIR}>
35+
)
36+
target_compile_definitions(Eigen3_Eigen INTERFACE EIGEN_MPL2_ONLY)
37+
38+
if(EIGEN_DONT_VECTORIZE)
39+
target_compile_definitions(Eigen3_Eigen INTERFACE EIGEN_DONT_VECTORIZE)
40+
endif()
41+
42+
if(EIGEN_WITH_MKL)
43+
# TODO: Checks that, on 64bits systems, `mkl::mkl` is using the LP64 interface
44+
# (by looking at the compile definition of the target)
45+
include(mkl)
46+
target_link_libraries(Eigen3_Eigen INTERFACE mkl::mkl)
47+
target_compile_definitions(Eigen3_Eigen INTERFACE
48+
EIGEN_USE_MKL_ALL
49+
EIGEN_USE_LAPACKE_STRICT
50+
)
51+
endif()
52+
53+
# On Windows, enable natvis files to improve debugging experience
54+
if(WIN32 AND eigen_SOURCE_DIR)
55+
target_sources(Eigen3_Eigen INTERFACE $<BUILD_INTERFACE:${eigen_SOURCE_DIR}/debug/msvc/eigen.natvis>)
56+
endif()
57+
58+
# Install rules
59+
set(CMAKE_INSTALL_DEFAULT_COMPONENT_NAME eigen)
60+
set_target_properties(Eigen3_Eigen PROPERTIES EXPORT_NAME Eigen)
61+
install(DIRECTORY ${EIGEN_INCLUDE_DIRS} DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
62+
install(TARGETS Eigen3_Eigen EXPORT Eigen_Targets)
63+
install(EXPORT Eigen_Targets DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/eigen NAMESPACE Eigen3::)

cmake/FindSphericalHarmonics.cmake

Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
#[=======================================================================[.rst:
2+
----
3+
4+
Finds or fetches the spherical-harmonics library.
5+
If USD_FILEFORMATS_FORCE_FETCHCONTENT or USD_FILEFORMATS_FETCH_SPHERICAL_HARMONICS are
6+
TRUE, spherical-harmonics will be fetched. Otherwise it will be searched via find commands.
7+
8+
Imported Targets
9+
^^^^^^^^^^^^^^^^
10+
11+
This module provides the following imported targets, if fetched:
12+
13+
``SphericalHarmonics::SphericalHarmonics``
14+
The SphericalHarmonics library
15+
16+
Result Variables
17+
^^^^^^^^^^^^^^^^
18+
19+
This will define the following variables:
20+
21+
``SphericalHarmonics_FOUND``
22+
23+
Cache Variables
24+
^^^^^^^^^^^^^^^
25+
26+
The following cache variables may also be set:
27+
28+
``SH_INCLUDE_DIR``
29+
The directory containing ``sh/spherical_harmonics.h``.
30+
31+
#]=======================================================================]
32+
33+
if(TARGET SphericalHarmonics::SphericalHarmonics)
34+
return()
35+
endif()
36+
37+
if (NOT TARGET Eigen3::Eigen)
38+
find_package(Eigen3 REQUIRED)
39+
endif()
40+
41+
if(USD_FILEFORMATS_FORCE_FETCHCONTENT OR USD_FILEFORMATS_FETCH_SPHERICAL_HARMONICS)
42+
message(STATUS "Fetching SphericalHarmonics")
43+
include(FetchContent)
44+
FetchContent_Declare(
45+
spherical_harmonics_git
46+
GIT_REPOSITORY "https://github.com/google/spherical-harmonics.git"
47+
GIT_TAG "ccb6c7fec875a1cd5ce5eb1315a9fa7603e0919a"
48+
)
49+
FetchContent_MakeAvailable(spherical_harmonics_git)
50+
51+
if(spherical_harmonics_git_POPULATED)
52+
set(SphericalHarmonics_FOUND TRUE)
53+
set(SH_SRC_FILES
54+
${spherical_harmonics_git_SOURCE_DIR}/sh/spherical_harmonics.cc
55+
${spherical_harmonics_git_SOURCE_DIR}/sh/spherical_harmonics.h
56+
${spherical_harmonics_git_SOURCE_DIR}/sh/image.h
57+
)
58+
add_library(SphericalHarmonics STATIC)
59+
target_sources(SphericalHarmonics PRIVATE ${SH_SRC_FILES})
60+
set(SH_INCLUDE_DIR "${spherical_harmonics_git_SOURCE_DIR}")
61+
target_include_directories(SphericalHarmonics PUBLIC ${SH_INCLUDE_DIR})
62+
target_link_libraries(SphericalHarmonics PUBLIC Eigen3::Eigen)
63+
set_property(TARGET SphericalHarmonics PROPERTY POSITION_INDEPENDENT_CODE ON)
64+
set_property(TARGET SphericalHarmonics PROPERTY CXX_STANDARD 17)
65+
target_compile_definitions(SphericalHarmonics PRIVATE "_USE_MATH_DEFINES")
66+
add_library(SphericalHarmonics::SphericalHarmonics ALIAS SphericalHarmonics)
67+
endif()
68+
else()
69+
include(FindPackageHandleStandardArgs)
70+
71+
find_path(SH_INCLUDE_DIR
72+
NAMES sh/spherical_harmonics.h
73+
)
74+
75+
find_package_handle_standard_args(SphericalHarmonics
76+
REQUIRED_VARS SH_INCLUDE_DIR
77+
)
78+
79+
if(SphericalHarmonics_FOUND)
80+
set(SH_SRC_FILES
81+
${SH_INCLUDE_DIR}/sh/spherical_harmonics.cc
82+
${SH_INCLUDE_DIR}/sh/spherical_harmonics.h
83+
${SH_INCLUDE_DIR}/sh/image.h
84+
)
85+
add_library(SphericalHarmonics STATIC)
86+
target_sources(SphericalHarmonics PRIVATE ${SH_SRC_FILES})
87+
set(SH_INCLUDE_DIR "${SphericalHarmonics_SOURCE_DIR}")
88+
target_include_directories(SphericalHarmonics PUBLIC ${SH_INCLUDE_DIR})
89+
target_link_libraries(SphericalHarmonics PUBLIC Eigen3::Eigen)
90+
set_property(TARGET SphericalHarmonics PROPERTY POSITION_INDEPENDENT_CODE ON)
91+
set_property(TARGET SphericalHarmonics PROPERTY CXX_STANDARD 17)
92+
target_compile_definitions(SphericalHarmonics PRIVATE "_USE_MATH_DEFINES")
93+
94+
add_library(SphericalHarmonics::SphericalHarmonics ALIAS SphericalHarmonics)
95+
elseif(${SphericalHarmonics_FIND_REQUIRED})
96+
message(FATAL_ERROR "Could not find SphericalHarmonics")
97+
endif()
98+
endif()
99+
100+

fbx/README.md

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
|Skeletons |||
3939
|Skeleton Animations ||⚠️|
4040
||||
41-
|Materials |||
41+
|Materials ||⚠️|
4242

4343

4444

@@ -74,6 +74,8 @@ opacity → phongSurface::TransparentColor
7474
ior → Not been used.
7575
displacement → phongSurface::DisplacementColor
7676

77+
Note that PBR materials are not supported on export, only Phong
78+
7779
- Only point, directional, and spot lights are imported. Other light types are exported as point lights.
7880

7981
- **OBS: The image files used by the UsdPreviewShader node will be extracted from the USDZ file and saved as PNG files in the same folder as the generated fbx. If the source file is USD the files should also be copied from the USD folder into the FBX folder.**

fbx/src/fbx.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ governing permissions and limitations under the License.
1212
#include "fbx.h"
1313
#include "debugCodes.h"
1414
#include <algorithm>
15-
#include <common.h>
15+
#include <fileformatutils/common.h>
1616
#include <fbxsdk.h>
1717
#include <fstream>
1818
#include <pxr/base/gf/matrix3d.h>

fbx/src/fbx.h

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ governing permissions and limitations under the License.
1616
#include <pxr/pxr.h>
1717
#include <sstream>
1818
#include <string>
19-
#include <usdData.h>
19+
#include <fileformatutils/usdData.h>
2020
#include <utility>
2121

2222

0 commit comments

Comments
 (0)