ernie-renderer 0.2.0.dev7__tar.gz → 0.2.0.dev13__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of ernie-renderer might be problematic. Click here for more details.
- ernie_renderer-0.2.0.dev13/.gitattributes +15 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/.github/workflows/ci.yml +21 -14
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/.pre-commit-config.yaml +3 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/CMakeLists.txt +8 -5
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/CMakePresets.json +7 -8
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/PKG-INFO +2 -2
- ernie_renderer-0.2.0.dev13/cmake/ErnieFetch.cmake +41 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/cmake/ErnieTesting.cmake +4 -0
- ernie_renderer-0.2.0.dev13/cmake/third_party/bc7enc.cmake +26 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/cmake/third_party/dlpack.cmake +2 -6
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/cmake/third_party/glm.cmake +1 -8
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/cmake/third_party/googletest.cmake +3 -6
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/cmake/third_party/json.cmake +1 -3
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/cmake/third_party/nanobind.cmake +2 -4
- ernie_renderer-0.2.0.dev13/cmake/third_party/openexr.cmake +71 -0
- ernie_renderer-0.2.0.dev13/cmake/third_party/stb.cmake +28 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/cmake/third_party/tracy.cmake +2 -6
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/cmake/third_party/volk.cmake +2 -6
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/cmake/third_party/vulkan_headers.cmake +3 -6
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/CMakeLists.txt +1 -1
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/app/main.cpp +1 -1
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/device/CMakeLists.txt +1 -1
- ernie_renderer-0.2.0.dev13/ernie/io/CMakeLists.txt +22 -0
- ernie_renderer-0.2.0.dev13/ernie/io/ies.cpp +229 -0
- ernie_renderer-0.2.0.dev13/ernie/io/ies.h +119 -0
- ernie_renderer-0.2.0.dev13/ernie/io/image.cpp +312 -0
- ernie_renderer-0.2.0.dev13/ernie/io/image.h +144 -0
- ernie_renderer-0.2.0.dev13/ernie/io/nanovdb.cpp +651 -0
- ernie_renderer-0.2.0.dev13/ernie/io/nanovdb.h +176 -0
- ernie_renderer-0.2.0.dev13/ernie/io/raster.cpp +1352 -0
- ernie_renderer-0.2.0.dev13/ernie/io/raster.h +593 -0
- ernie_renderer-0.2.0.dev13/ernie/io/texture.cpp +1478 -0
- ernie_renderer-0.2.0.dev13/ernie/io/texture.h +406 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/CMakeLists.txt +1 -1
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/cloud.cpp +5 -5
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/cloud.h +1 -1
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/regolith.cpp +2 -2
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/scattering.cpp +1 -1
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/spectrum.cpp +2 -2
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/python/CMakeLists.txt +5 -1
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/python/module.cpp +1 -1
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/CMakeLists.txt +5 -4
- ernie_renderer-0.2.0.dev13/ernie/util/bytes.h +78 -0
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/disk_cache.cpp +1 -1
- ernie_renderer-0.2.0.dev13/ernie/util/file.cpp +40 -0
- ernie_renderer-0.2.0.dev13/ernie/util/file.h +26 -0
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/log.cpp +1 -1
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/mapped_file.cpp +5 -3
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/math.h +16 -3
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/noise.cpp +2 -2
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/profile.h +1 -1
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/profile_report.cpp +1 -1
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/profile_report.h +1 -1
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/profiler.cpp +1 -1
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/tensor.cpp +1 -1
- ernie_renderer-0.2.0.dev13/ernie/util/text.h +100 -0
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/version.cpp +1 -1
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/worker_pool.h +1 -1
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/pyproject.toml +7 -5
- {ernie_renderer-0.2.0.dev7/ernie/test → ernie_renderer-0.2.0.dev13/tests}/CMakeLists.txt +28 -15
- ernie_renderer-0.2.0.dev13/tests/fixtures/exr/README.md +5 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/exr/make_exr.py +110 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/exr/rgb_float_zip.exr +0 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/exr/rgba_half_window.exr +0 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/exr/y_half_zips.exr +0 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/ies/README.md +4 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/ies/downlight_quadrant.ies +14 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/ies/floodlight_type_b.ies +16 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/ies/lamp.tilt +4 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/images/grey16.png +0 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/ktx2/README.md +13 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/ktx2/quadrants_etc1s.ktx2 +0 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/ktx2/quadrants_uastc_zstd.ktx2 +0 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/ktx2/tilted_normal_etc1s.ktx2 +0 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/ktx2/tilted_normal_uastc.ktx2 +0 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/tiff/README.md +8 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/tiff/float_deflate_predictor3.tif +0 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/tiff/float_raw.tif +0 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/tiff/int16_bigtiff_bigendian.tif +0 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/tiff/rgb_lzw_predictor2.tif +0 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/tiff/rgb_planar_lzw.tif +0 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/tiff/rgb_planar_raw.tif +0 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/tiff/rgb_tiled_deflate.tif +0 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/volumes/cube.nvdb +0 -0
- ernie_renderer-0.2.0.dev13/tests/fixtures/volumes/make_nvdb.py +38 -0
- ernie_renderer-0.2.0.dev13/tests/io/ies_test.cpp +223 -0
- ernie_renderer-0.2.0.dev13/tests/io/image_test.cpp +310 -0
- ernie_renderer-0.2.0.dev13/tests/io/nanovdb_test.cpp +190 -0
- ernie_renderer-0.2.0.dev13/tests/io/raster_test.cpp +501 -0
- ernie_renderer-0.2.0.dev13/tests/io/texture_test.cpp +755 -0
- ernie_renderer-0.2.0.dev13/tests/util/bytes_test.cpp +59 -0
- {ernie_renderer-0.2.0.dev7/ernie/test/core → ernie_renderer-0.2.0.dev13/tests/util}/disk_cache_test.cpp +1 -1
- ernie_renderer-0.2.0.dev13/tests/util/file_test.cpp +41 -0
- {ernie_renderer-0.2.0.dev7/ernie/test/core → ernie_renderer-0.2.0.dev13/tests/util}/linear_algebra_test.cpp +1 -1
- {ernie_renderer-0.2.0.dev7/ernie/test/core → ernie_renderer-0.2.0.dev13/tests/util}/log_test.cpp +1 -1
- {ernie_renderer-0.2.0.dev7/ernie/test/core → ernie_renderer-0.2.0.dev13/tests/util}/mapped_file_test.cpp +10 -1
- {ernie_renderer-0.2.0.dev7/ernie/test/core → ernie_renderer-0.2.0.dev13/tests/util}/math_test.cpp +12 -1
- {ernie_renderer-0.2.0.dev7/ernie/test/core → ernie_renderer-0.2.0.dev13/tests/util}/noise_test.cpp +1 -1
- {ernie_renderer-0.2.0.dev7/ernie/test/core → ernie_renderer-0.2.0.dev13/tests/util}/parallel_test.cpp +1 -1
- {ernie_renderer-0.2.0.dev7/ernie/test/core → ernie_renderer-0.2.0.dev13/tests/util}/profile_report_test.cpp +1 -1
- {ernie_renderer-0.2.0.dev7/ernie/test/core → ernie_renderer-0.2.0.dev13/tests/util}/profiler_test.cpp +1 -1
- {ernie_renderer-0.2.0.dev7/ernie/test/core → ernie_renderer-0.2.0.dev13/tests/util}/random_test.cpp +1 -1
- {ernie_renderer-0.2.0.dev7/ernie/test/core → ernie_renderer-0.2.0.dev13/tests/util}/tensor_test.cpp +1 -1
- ernie_renderer-0.2.0.dev13/tests/util/text_test.cpp +42 -0
- {ernie_renderer-0.2.0.dev7/ernie/test/core → ernie_renderer-0.2.0.dev13/tests/util}/version_test.cpp +1 -1
- {ernie_renderer-0.2.0.dev7/ernie/test/core → ernie_renderer-0.2.0.dev13/tests/util}/worker_pool_test.cpp +1 -1
- ernie_renderer-0.2.0.dev13/third_party/CMakeLists.txt +20 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/LICENSE +201 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/LICENSES/Apache-2.0.txt +208 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/LICENSES/BSD-3-clause.txt +96 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/LICENSES/MIT.txt +47 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/NOTICE +15 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/README.md +3 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu.h +821 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_astc_cfgs.inl +648 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_astc_hdr_core.h +211 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_astc_helpers.h +5335 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_containers.h +4354 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_containers_impl.h +818 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_dds_transcoder.inl +1372 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_etc1_mods.inl +258 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_file_headers.h +264 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_idct.h +1446 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_transcoder.cpp +45962 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_transcoder.h +1786 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_transcoder_internal.h +4044 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_transcoder_tables_astc.inc +481 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_transcoder_tables_astc_0_255.inc +481 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_transcoder_tables_atc_55.inc +481 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_transcoder_tables_atc_56.inc +481 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_transcoder_tables_bc7_m5_alpha.inc +49 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_transcoder_tables_bc7_m5_color.inc +481 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_transcoder_tables_dxt1_5.inc +494 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_transcoder_tables_dxt1_6.inc +494 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_transcoder_tables_pvrtc2_45.inc +481 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_transcoder_tables_pvrtc2_alpha_33.inc +481 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_transcoder_uastc.h +289 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_xbc7_decoder.h +1467 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/transcoder/basisu_xbc7_decoder.inl +1515 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/zstd/LICENSE +30 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/zstd/zstd.h +3198 -0
- ernie_renderer-0.2.0.dev13/third_party/basisu/zstd/zstd_errors.h +107 -0
- ernie_renderer-0.2.0.dev13/third_party/nanovdb/LICENSE +176 -0
- ernie_renderer-0.2.0.dev13/third_party/nanovdb/PNanoVDB.h +3590 -0
- ernie_renderer-0.2.0.dev7/.gitattributes +0 -2
- ernie_renderer-0.2.0.dev7/ernie/io/CMakeLists.txt +0 -3
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/.clang-format +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/.clang-tidy +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/.dockerignore +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/.gersemirc +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/.github/scripts/coverage_badge.py +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/.github/scripts/install-lavapipe-windows.sh +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/.gitignore +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/Dockerfile +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/LICENSE +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/README.md +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/cmake/ErniePackaging.cmake +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/docs/README.md +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/docs/index.md +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/docs/requirements.txt +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/app/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/device/vulkan_devices.cpp +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/device/vulkan_devices.h +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/graph/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/astronomy.cpp +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/astronomy.h +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/atmosphere.cpp +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/atmosphere.h +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/constants.h +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/reflectance_library.cpp +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/reflectance_library.h +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/reflectance_table.h +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/regolith.h +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/scattering.h +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/solar.cpp +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/solar.h +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/solar_table.h +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/physics/spectrum.h +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/python/ernie/__init__.py +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/render/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/ernie/scene/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/disk_cache.h +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/linear_algebra.h +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/log.h +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/mapped_file.h +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/noise.h +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/numbers.h +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/parallel.h +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/profiler.h +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/random.h +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/tensor.h +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/core → ernie_renderer-0.2.0.dev13/ernie/util}/version.h +0 -0
- {ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/mkdocs.yml +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/test → ernie_renderer-0.2.0.dev13/tests}/device/vulkan_devices_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/test → ernie_renderer-0.2.0.dev13/tests}/physics/astronomy_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/test → ernie_renderer-0.2.0.dev13/tests}/physics/atmosphere_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/test → ernie_renderer-0.2.0.dev13/tests}/physics/cloud_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/test → ernie_renderer-0.2.0.dev13/tests}/physics/reflectance_library_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/test → ernie_renderer-0.2.0.dev13/tests}/physics/regolith_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/test → ernie_renderer-0.2.0.dev13/tests}/physics/scattering_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/test → ernie_renderer-0.2.0.dev13/tests}/physics/solar_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/test → ernie_renderer-0.2.0.dev13/tests}/physics/spectrum_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev7/ernie/test → ernie_renderer-0.2.0.dev13/tests}/python/test_package.py +0 -0
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
* text=auto eol=lf
|
|
2
|
+
*.sh text eol=lf
|
|
3
|
+
|
|
4
|
+
# Binary formats, never normalised or diffed as text whatever their bytes look like.
|
|
5
|
+
*.dds binary
|
|
6
|
+
*.exr binary
|
|
7
|
+
*.img binary
|
|
8
|
+
*.jpeg binary
|
|
9
|
+
*.jpg binary
|
|
10
|
+
*.ktx2 binary
|
|
11
|
+
*.nvdb binary
|
|
12
|
+
*.png binary
|
|
13
|
+
*.tif binary
|
|
14
|
+
*.tiff binary
|
|
15
|
+
*.vdb binary
|
|
@@ -80,13 +80,12 @@ jobs:
|
|
|
80
80
|
# MSVC on the path for the Ninja generator.
|
|
81
81
|
- uses: ilammy/msvc-dev-cmd@0b201ec74fa43914dc39ae48a89fd1d8cb592756 # v1.13.0
|
|
82
82
|
if: runner.os == 'Windows'
|
|
83
|
-
# Fetched dependencies' sources, keyed on their pins
|
|
83
|
+
# Fetched dependencies' sources (ERNIE_DEPS_DIR), keyed on their pins; they are built in the
|
|
84
|
+
# build tree, so compiled objects are not cached.
|
|
84
85
|
- uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
|
|
85
86
|
with:
|
|
86
|
-
path:
|
|
87
|
-
|
|
88
|
-
.deps/*-subbuild
|
|
89
|
-
key: deps-${{ runner.os }}-${{ hashFiles('cmake/third_party/**') }}
|
|
87
|
+
path: .deps
|
|
88
|
+
key: deps-${{ runner.os }}-${{ hashFiles('cmake/ErnieFetch.cmake', 'cmake/third_party/**') }}
|
|
90
89
|
- name: Configure
|
|
91
90
|
shell: bash
|
|
92
91
|
run: >
|
|
@@ -171,10 +170,8 @@ jobs:
|
|
|
171
170
|
- run: python -m pip install nanobind ninja pytest gcovr
|
|
172
171
|
- uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0
|
|
173
172
|
with:
|
|
174
|
-
path:
|
|
175
|
-
|
|
176
|
-
.deps/*-subbuild
|
|
177
|
-
key: deps-${{ runner.os }}-${{ hashFiles('cmake/third_party/**') }}
|
|
173
|
+
path: .deps
|
|
174
|
+
key: deps-${{ runner.os }}-${{ hashFiles('cmake/ErnieFetch.cmake', 'cmake/third_party/**') }}
|
|
178
175
|
- name: Install lavapipe
|
|
179
176
|
run: |
|
|
180
177
|
sudo apt-get update
|
|
@@ -194,7 +191,7 @@ jobs:
|
|
|
194
191
|
- name: Report
|
|
195
192
|
run: |
|
|
196
193
|
mkdir -p coverage
|
|
197
|
-
gcovr --root . --filter 'ernie/' --exclude '
|
|
194
|
+
gcovr --root . --filter 'ernie/' --exclude '.*_table\.h' \
|
|
198
195
|
--object-directory build/coverage \
|
|
199
196
|
--html-details coverage/index.html --json-summary coverage/summary.json --print-summary
|
|
200
197
|
python .github/scripts/coverage_badge.py coverage
|
|
@@ -223,9 +220,13 @@ jobs:
|
|
|
223
220
|
|
|
224
221
|
# The project site on GitHub Pages, from main: the docs, with the coverage report and its badge
|
|
225
222
|
# under coverage/.
|
|
223
|
+
# The site follows main whenever its docs build, so a failing test elsewhere never takes it down;
|
|
224
|
+
# the coverage report is included when the coverage job passed.
|
|
226
225
|
pages:
|
|
227
|
-
needs: [
|
|
228
|
-
if:
|
|
226
|
+
needs: [docs, coverage]
|
|
227
|
+
if: >
|
|
228
|
+
always() && github.event_name == 'push' && github.ref == 'refs/heads/main'
|
|
229
|
+
&& needs.docs.result == 'success'
|
|
229
230
|
runs-on: ubuntu-24.04
|
|
230
231
|
timeout-minutes: 10
|
|
231
232
|
permissions:
|
|
@@ -240,6 +241,7 @@ jobs:
|
|
|
240
241
|
name: docs
|
|
241
242
|
path: site
|
|
242
243
|
- uses: actions/download-artifact@9000827ccba6bdab643e8b6fd33ac0654aef8333 # v8.0.2
|
|
244
|
+
if: needs.coverage.result == 'success'
|
|
243
245
|
with:
|
|
244
246
|
name: coverage
|
|
245
247
|
path: site/coverage
|
|
@@ -250,18 +252,23 @@ jobs:
|
|
|
250
252
|
uses: actions/deploy-pages@368f82528645a54fb793d4d04e342629a3f51346 # v5.0.1
|
|
251
253
|
|
|
252
254
|
wheel:
|
|
253
|
-
name: wheel (${{ matrix.platform }})
|
|
255
|
+
name: wheel (${{ matrix.platform }}, ${{ matrix.python }})
|
|
254
256
|
needs: version
|
|
255
257
|
runs-on: ${{ matrix.runner }}
|
|
256
258
|
timeout-minutes: 45
|
|
257
259
|
strategy:
|
|
258
260
|
fail-fast: false
|
|
259
261
|
matrix:
|
|
262
|
+
# cp312 is the stable-ABI wheel for every CPython from 3.12.
|
|
263
|
+
python: [cp310, cp311, cp312]
|
|
264
|
+
platform: [linux-x86_64, linux-aarch64, windows-amd64, macos-arm64]
|
|
260
265
|
include:
|
|
261
266
|
- { platform: linux-x86_64, runner: ubuntu-24.04 }
|
|
262
267
|
- { platform: linux-aarch64, runner: ubuntu-24.04-arm }
|
|
263
268
|
- { platform: windows-amd64, runner: windows-2025 }
|
|
264
269
|
- { platform: macos-arm64, runner: macos-15 }
|
|
270
|
+
env:
|
|
271
|
+
CIBW_BUILD: ${{ matrix.python }}-*
|
|
265
272
|
steps:
|
|
266
273
|
- uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1
|
|
267
274
|
- name: Version
|
|
@@ -276,7 +283,7 @@ jobs:
|
|
|
276
283
|
output-dir: wheelhouse
|
|
277
284
|
- uses: actions/upload-artifact@cf430e030ddbb5b0abf93d22962f4752f3646cd9 # v7.0.2
|
|
278
285
|
with:
|
|
279
|
-
name: wheel-${{ matrix.platform }}
|
|
286
|
+
name: wheel-${{ matrix.platform }}-${{ matrix.python }}
|
|
280
287
|
path: wheelhouse/*.whl
|
|
281
288
|
|
|
282
289
|
# The sdist, then a wheel built from it and imported, as pip does for platforms without wheels.
|
|
@@ -14,7 +14,7 @@ project(
|
|
|
14
14
|
)
|
|
15
15
|
|
|
16
16
|
# Pre-release suffix such as .dev12, written by CI.
|
|
17
|
-
set(ERNIE_VERSION_SUFFIX ".
|
|
17
|
+
set(ERNIE_VERSION_SUFFIX ".dev13" CACHE STRING "Pre-release suffix of Ernie's version")
|
|
18
18
|
set(ERNIE_VERSION "${PROJECT_VERSION}${ERNIE_VERSION_SUFFIX}")
|
|
19
19
|
|
|
20
20
|
option(ERNIE_BUILD_TESTS "Build Ernie's tests" OFF)
|
|
@@ -40,12 +40,17 @@ if(ERNIE_BUILD_PYTHON)
|
|
|
40
40
|
set(CMAKE_POSITION_INDEPENDENT_CODE ON)
|
|
41
41
|
endif()
|
|
42
42
|
|
|
43
|
+
include(cmake/ErnieFetch.cmake)
|
|
43
44
|
include(cmake/third_party/glm.cmake)
|
|
44
45
|
include(cmake/third_party/dlpack.cmake)
|
|
45
46
|
include(cmake/third_party/json.cmake)
|
|
47
|
+
include(cmake/third_party/openexr.cmake)
|
|
48
|
+
include(cmake/third_party/bc7enc.cmake)
|
|
49
|
+
include(cmake/third_party/stb.cmake)
|
|
46
50
|
include(cmake/third_party/tracy.cmake)
|
|
47
51
|
include(cmake/third_party/vulkan_headers.cmake)
|
|
48
52
|
include(cmake/third_party/volk.cmake)
|
|
53
|
+
add_subdirectory(third_party)
|
|
49
54
|
|
|
50
55
|
add_library(ernie_build_options INTERFACE)
|
|
51
56
|
if(MSVC)
|
|
@@ -79,9 +84,7 @@ if(ERNIE_ASSERTS)
|
|
|
79
84
|
)
|
|
80
85
|
endif()
|
|
81
86
|
if(ERNIE_COVERAGE)
|
|
82
|
-
|
|
83
|
-
# them.
|
|
84
|
-
target_compile_options(ernie_build_options INTERFACE --coverage -fprofile-update=atomic -O0 -g)
|
|
87
|
+
target_compile_options(ernie_build_options INTERFACE --coverage -fprofile-update=atomic -Og -g)
|
|
85
88
|
target_link_options(ernie_build_options INTERFACE --coverage)
|
|
86
89
|
endif()
|
|
87
90
|
|
|
@@ -89,7 +92,7 @@ add_subdirectory(ernie)
|
|
|
89
92
|
|
|
90
93
|
if(ERNIE_BUILD_TESTS)
|
|
91
94
|
enable_testing()
|
|
92
|
-
add_subdirectory(
|
|
95
|
+
add_subdirectory(tests)
|
|
93
96
|
endif()
|
|
94
97
|
|
|
95
98
|
if(PROJECT_IS_TOP_LEVEL AND NOT SKBUILD)
|
|
@@ -28,8 +28,7 @@
|
|
|
28
28
|
"cacheVariables": {
|
|
29
29
|
"CMAKE_BUILD_TYPE": "Release",
|
|
30
30
|
"ERNIE_ASSERTS": "ON",
|
|
31
|
-
"ERNIE_WARNINGS_AS_ERRORS": "ON"
|
|
32
|
-
"FETCHCONTENT_BASE_DIR": "${sourceDir}/.deps"
|
|
31
|
+
"ERNIE_WARNINGS_AS_ERRORS": "ON"
|
|
33
32
|
}
|
|
34
33
|
},
|
|
35
34
|
{
|
|
@@ -41,8 +40,7 @@
|
|
|
41
40
|
"cacheVariables": {
|
|
42
41
|
"CMAKE_BUILD_TYPE": "Debug",
|
|
43
42
|
"ERNIE_COVERAGE": "ON",
|
|
44
|
-
"ERNIE_WARNINGS_AS_ERRORS": "ON"
|
|
45
|
-
"FETCHCONTENT_BASE_DIR": "${sourceDir}/.deps"
|
|
43
|
+
"ERNIE_WARNINGS_AS_ERRORS": "ON"
|
|
46
44
|
}
|
|
47
45
|
},
|
|
48
46
|
{
|
|
@@ -56,8 +54,7 @@
|
|
|
56
54
|
"CMAKE_INSTALL_PREFIX": "/usr",
|
|
57
55
|
"ERNIE_BUILD_APP": "ON",
|
|
58
56
|
"ERNIE_BUILD_TESTS": "OFF",
|
|
59
|
-
"ERNIE_BUILD_PYTHON": "OFF"
|
|
60
|
-
"FETCHCONTENT_BASE_DIR": "${sourceDir}/.deps"
|
|
57
|
+
"ERNIE_BUILD_PYTHON": "OFF"
|
|
61
58
|
}
|
|
62
59
|
}
|
|
63
60
|
],
|
|
@@ -68,11 +65,13 @@
|
|
|
68
65
|
},
|
|
69
66
|
{
|
|
70
67
|
"name": "ci",
|
|
71
|
-
"configurePreset": "ci"
|
|
68
|
+
"configurePreset": "ci",
|
|
69
|
+
"nativeToolOptions": ["-k", "0"]
|
|
72
70
|
},
|
|
73
71
|
{
|
|
74
72
|
"name": "coverage",
|
|
75
|
-
"configurePreset": "coverage"
|
|
73
|
+
"configurePreset": "coverage",
|
|
74
|
+
"nativeToolOptions": ["-k", "0"]
|
|
76
75
|
},
|
|
77
76
|
{
|
|
78
77
|
"name": "package",
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: ernie-renderer
|
|
3
|
-
Version: 0.2.0.
|
|
3
|
+
Version: 0.2.0.dev13
|
|
4
4
|
Summary: Efficient Renderer for Natural and Interplanetary Environments: a physically based, spectral Vulkan ray tracer
|
|
5
5
|
Author: Alex Maietta
|
|
6
6
|
License-Expression: BSD-3-Clause
|
|
@@ -8,7 +8,7 @@ License-File: LICENSE
|
|
|
8
8
|
Project-URL: Homepage, https://github.com/alexmaietta/ernie
|
|
9
9
|
Project-URL: Repository, https://github.com/alexmaietta/ernie
|
|
10
10
|
Project-URL: Issues, https://github.com/alexmaietta/ernie/issues
|
|
11
|
-
Requires-Python: >=3.
|
|
11
|
+
Requires-Python: >=3.10
|
|
12
12
|
Provides-Extra: test
|
|
13
13
|
Requires-Dist: pytest>=8; extra == "test"
|
|
14
14
|
Description-Content-Type: text/markdown
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
# SPDX-License-Identifier: BSD-3-Clause
|
|
2
|
+
include_guard(GLOBAL)
|
|
3
|
+
include(FetchContent)
|
|
4
|
+
|
|
5
|
+
set(ERNIE_DEPS_DIR
|
|
6
|
+
"${PROJECT_SOURCE_DIR}/.deps"
|
|
7
|
+
CACHE PATH
|
|
8
|
+
"Where fetched dependency sources are kept"
|
|
9
|
+
)
|
|
10
|
+
|
|
11
|
+
function(ernie_fetch name)
|
|
12
|
+
# The FetchContent_Declare arguments recipes use, declared so others are rejected and gersemi
|
|
13
|
+
# formats calls by keyword.
|
|
14
|
+
cmake_parse_arguments(
|
|
15
|
+
ARG
|
|
16
|
+
""
|
|
17
|
+
"URL;GIT_REPOSITORY;GIT_TAG;GIT_SHALLOW;SOURCE_SUBDIR"
|
|
18
|
+
"GIT_SUBMODULES"
|
|
19
|
+
${ARGN}
|
|
20
|
+
)
|
|
21
|
+
if(ARG_UNPARSED_ARGUMENTS)
|
|
22
|
+
message(FATAL_ERROR "ernie_fetch(${name}): unexpected ${ARG_UNPARSED_ARGUMENTS}")
|
|
23
|
+
endif()
|
|
24
|
+
string(TOLOWER "${name}" lower)
|
|
25
|
+
string(TOUPPER "${name}" upper)
|
|
26
|
+
set(source "${ERNIE_DEPS_DIR}/${lower}-src")
|
|
27
|
+
set(stamp "${source}/.ernie-fetched")
|
|
28
|
+
if(EXISTS "${stamp}")
|
|
29
|
+
file(READ "${stamp}" fetched)
|
|
30
|
+
if(fetched STREQUAL "${ARGN}")
|
|
31
|
+
set(FETCHCONTENT_SOURCE_DIR_${upper} "${source}")
|
|
32
|
+
else()
|
|
33
|
+
file(REMOVE_RECURSE "${source}")
|
|
34
|
+
endif()
|
|
35
|
+
endif()
|
|
36
|
+
FetchContent_Declare(${name} ${ARGN} SOURCE_DIR "${source}")
|
|
37
|
+
FetchContent_MakeAvailable(${name})
|
|
38
|
+
file(WRITE "${stamp}" "${ARGN}")
|
|
39
|
+
set(${lower}_SOURCE_DIR "${${lower}_SOURCE_DIR}" PARENT_SCOPE)
|
|
40
|
+
set(${lower}_BINARY_DIR "${${lower}_BINARY_DIR}" PARENT_SCOPE)
|
|
41
|
+
endfunction()
|
|
@@ -25,6 +25,10 @@ function(ernie_add_test_suite name)
|
|
|
25
25
|
set(target ernie_tests_${name})
|
|
26
26
|
add_executable(${target} ${ARG_SOURCES})
|
|
27
27
|
target_link_libraries(${target} PRIVATE ${ARG_LIBRARIES} GTest::gtest_main ernie_build_options)
|
|
28
|
+
target_compile_definitions(
|
|
29
|
+
${target}
|
|
30
|
+
PRIVATE ERNIE_TEST_FIXTURES="${PROJECT_SOURCE_DIR}/tests/fixtures"
|
|
31
|
+
)
|
|
28
32
|
gtest_discover_tests(
|
|
29
33
|
${target}
|
|
30
34
|
TEST_PREFIX "ernie.${name}."
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
# SPDX-License-Identifier: BSD-3-Clause
|
|
2
|
+
# bc7enc_rdo has no releases, so a commit is pinned.
|
|
3
|
+
set(ERNIE_DEP_VERSION_bc7enc
|
|
4
|
+
b9438627eef73a1157e84201b6fa6eb2ffd6d9f0
|
|
5
|
+
CACHE STRING
|
|
6
|
+
"Commit of bc7enc_rdo to fetch"
|
|
7
|
+
)
|
|
8
|
+
mark_as_advanced(ERNIE_DEP_VERSION_bc7enc)
|
|
9
|
+
|
|
10
|
+
ernie_fetch(
|
|
11
|
+
bc7enc
|
|
12
|
+
URL https://github.com/richgel999/bc7enc_rdo/archive/${ERNIE_DEP_VERSION_bc7enc}.tar.gz
|
|
13
|
+
SOURCE_SUBDIR no-build
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
# bc7enc_rdo (MIT or public domain): its BC7 encoder (bc7enc), BC1 to BC5 encoders and decoders
|
|
17
|
+
# (rgbcx) and BC7 decoder (bc7decomp), for baking and decoding textures.
|
|
18
|
+
add_library(
|
|
19
|
+
ernie_bc7enc
|
|
20
|
+
STATIC
|
|
21
|
+
"${bc7enc_SOURCE_DIR}/bc7enc.cpp"
|
|
22
|
+
"${bc7enc_SOURCE_DIR}/rgbcx.cpp"
|
|
23
|
+
"${bc7enc_SOURCE_DIR}/bc7decomp.cpp"
|
|
24
|
+
)
|
|
25
|
+
target_include_directories(ernie_bc7enc SYSTEM PUBLIC "${bc7enc_SOURCE_DIR}")
|
|
26
|
+
set_target_properties(ernie_bc7enc PROPERTIES POSITION_INDEPENDENT_CODE ON)
|
|
@@ -2,15 +2,11 @@
|
|
|
2
2
|
set(ERNIE_DEP_VERSION_dlpack v1.3 CACHE STRING "Tag of DLPack to fetch")
|
|
3
3
|
mark_as_advanced(ERNIE_DEP_VERSION_dlpack)
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
FetchContent_Declare(
|
|
5
|
+
ernie_fetch(
|
|
7
6
|
dlpack
|
|
8
|
-
|
|
9
|
-
GIT_TAG ${ERNIE_DEP_VERSION_dlpack}
|
|
10
|
-
GIT_SHALLOW TRUE
|
|
7
|
+
URL https://github.com/dmlc/dlpack/archive/refs/tags/${ERNIE_DEP_VERSION_dlpack}.tar.gz
|
|
11
8
|
SOURCE_SUBDIR no-build
|
|
12
9
|
)
|
|
13
|
-
FetchContent_MakeAvailable(dlpack)
|
|
14
10
|
|
|
15
11
|
# The tensor exchange header, nothing to build.
|
|
16
12
|
add_library(ernie_dlpack INTERFACE)
|
|
@@ -6,14 +6,7 @@ set(GLM_BUILD_LIBRARY OFF)
|
|
|
6
6
|
set(GLM_BUILD_TESTS OFF)
|
|
7
7
|
set(GLM_BUILD_INSTALL OFF)
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
FetchContent_Declare(
|
|
11
|
-
glm
|
|
12
|
-
GIT_REPOSITORY https://github.com/g-truc/glm.git
|
|
13
|
-
GIT_TAG ${ERNIE_DEP_VERSION_glm}
|
|
14
|
-
GIT_SHALLOW TRUE
|
|
15
|
-
)
|
|
16
|
-
FetchContent_MakeAvailable(glm)
|
|
9
|
+
ernie_fetch(glm URL https://github.com/g-truc/glm/archive/refs/tags/${ERNIE_DEP_VERSION_glm}.tar.gz)
|
|
17
10
|
|
|
18
11
|
add_library(ernie_glm INTERFACE)
|
|
19
12
|
target_include_directories(ernie_glm SYSTEM INTERFACE "${glm_SOURCE_DIR}")
|
|
@@ -6,11 +6,8 @@ set(BUILD_GMOCK OFF)
|
|
|
6
6
|
set(INSTALL_GTEST OFF)
|
|
7
7
|
set(gtest_force_shared_crt ON)
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
FetchContent_Declare(
|
|
9
|
+
ernie_fetch(
|
|
11
10
|
googletest
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
GIT_SHALLOW TRUE
|
|
11
|
+
URL
|
|
12
|
+
https://github.com/google/googletest/archive/refs/tags/${ERNIE_DEP_VERSION_googletest}.tar.gz
|
|
15
13
|
)
|
|
16
|
-
FetchContent_MakeAvailable(googletest)
|
|
@@ -3,12 +3,10 @@ set(ERNIE_DEP_VERSION_json v3.12.0 CACHE STRING "Release of nlohmann/json to fet
|
|
|
3
3
|
mark_as_advanced(ERNIE_DEP_VERSION_json)
|
|
4
4
|
|
|
5
5
|
# The release's single-include archive, without the repository's tests and history.
|
|
6
|
-
|
|
7
|
-
FetchContent_Declare(
|
|
6
|
+
ernie_fetch(
|
|
8
7
|
nlohmann_json
|
|
9
8
|
URL https://github.com/nlohmann/json/releases/download/${ERNIE_DEP_VERSION_json}/include.zip
|
|
10
9
|
)
|
|
11
|
-
FetchContent_MakeAvailable(nlohmann_json)
|
|
12
10
|
|
|
13
11
|
add_library(ernie_json INTERFACE)
|
|
14
12
|
target_include_directories(ernie_json SYSTEM INTERFACE "${nlohmann_json_SOURCE_DIR}/single_include")
|
|
@@ -8,7 +8,7 @@ mark_as_advanced(ERNIE_DEP_VERSION_nanobind)
|
|
|
8
8
|
|
|
9
9
|
find_package(
|
|
10
10
|
Python
|
|
11
|
-
3.
|
|
11
|
+
3.10
|
|
12
12
|
REQUIRED
|
|
13
13
|
COMPONENTS Interpreter Development.Module ${SKBUILD_SABI_COMPONENT}
|
|
14
14
|
)
|
|
@@ -22,13 +22,11 @@ execute_process(
|
|
|
22
22
|
)
|
|
23
23
|
find_package(nanobind CONFIG QUIET)
|
|
24
24
|
if(NOT nanobind_FOUND)
|
|
25
|
-
|
|
26
|
-
FetchContent_Declare(
|
|
25
|
+
ernie_fetch(
|
|
27
26
|
nanobind
|
|
28
27
|
GIT_REPOSITORY https://github.com/wjakob/nanobind.git
|
|
29
28
|
GIT_TAG ${ERNIE_DEP_VERSION_nanobind}
|
|
30
29
|
GIT_SHALLOW TRUE
|
|
31
30
|
GIT_SUBMODULES ext/robin_map
|
|
32
31
|
)
|
|
33
|
-
FetchContent_MakeAvailable(nanobind)
|
|
34
32
|
endif()
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# SPDX-License-Identifier: BSD-3-Clause
|
|
2
|
+
set(ERNIE_DEP_VERSION_openexr v3.5.2 CACHE STRING "Tag of OpenEXR to fetch")
|
|
3
|
+
set(ERNIE_DEP_VERSION_imath v3.2.3 CACHE STRING "Tag of Imath to fetch for OpenEXR")
|
|
4
|
+
mark_as_advanced(ERNIE_DEP_VERSION_openexr ERNIE_DEP_VERSION_imath)
|
|
5
|
+
|
|
6
|
+
set(OPENEXR_BUILD_TOOLS OFF)
|
|
7
|
+
set(OPENEXR_BUILD_EXAMPLES OFF)
|
|
8
|
+
set(OPENEXR_BUILD_DOCS OFF)
|
|
9
|
+
set(OPENEXR_BUILD_PYTHON OFF)
|
|
10
|
+
set(OPENEXR_INSTALL OFF)
|
|
11
|
+
set(OPENEXR_INSTALL_TOOLS OFF)
|
|
12
|
+
set(OPENEXR_INSTALL_PKG_CONFIG OFF)
|
|
13
|
+
set(OPENEXR_TEST_LIBRARIES OFF)
|
|
14
|
+
set(OPENEXR_TEST_TOOLS OFF)
|
|
15
|
+
set(OPENEXR_TEST_PYTHON OFF)
|
|
16
|
+
set(OPENEXR_FORCE_INTERNAL_IMATH ON)
|
|
17
|
+
set(OPENEXR_FORCE_INTERNAL_DEFLATE ON)
|
|
18
|
+
set(OPENEXR_FORCE_INTERNAL_ZSTD ON)
|
|
19
|
+
set(OPENEXR_FORCE_INTERNAL_OPENJPH ON)
|
|
20
|
+
set(IMATH_INSTALL_PKG_CONFIG OFF)
|
|
21
|
+
set(IMATH_INSTALL OFF)
|
|
22
|
+
set(BUILD_SHARED_LIBS OFF)
|
|
23
|
+
|
|
24
|
+
# Their own tests stay out of Ernie's ctest. Imath is made available first, so OpenEXR finds it
|
|
25
|
+
# populated and skips its own git clone of it.
|
|
26
|
+
set(ernie_saved_build_testing ${BUILD_TESTING})
|
|
27
|
+
set(BUILD_TESTING OFF)
|
|
28
|
+
ernie_fetch(
|
|
29
|
+
Imath
|
|
30
|
+
URL
|
|
31
|
+
https://github.com/AcademySoftwareFoundation/Imath/archive/refs/tags/${ERNIE_DEP_VERSION_imath}.tar.gz
|
|
32
|
+
)
|
|
33
|
+
ernie_fetch(
|
|
34
|
+
openexr
|
|
35
|
+
URL
|
|
36
|
+
https://github.com/AcademySoftwareFoundation/openexr/archive/refs/tags/${ERNIE_DEP_VERSION_openexr}.tar.gz
|
|
37
|
+
)
|
|
38
|
+
set(BUILD_TESTING ${ernie_saved_build_testing})
|
|
39
|
+
|
|
40
|
+
# Its headers and Imath's are system headers to Ernie, kept out of its warnings.
|
|
41
|
+
foreach(
|
|
42
|
+
target
|
|
43
|
+
OpenEXR
|
|
44
|
+
OpenEXRCore
|
|
45
|
+
OpenEXRUtil
|
|
46
|
+
Iex
|
|
47
|
+
IlmThread
|
|
48
|
+
Imath
|
|
49
|
+
ImathConfig
|
|
50
|
+
OpenEXRConfig
|
|
51
|
+
)
|
|
52
|
+
if(TARGET ${target})
|
|
53
|
+
get_target_property(directories ${target} INTERFACE_INCLUDE_DIRECTORIES)
|
|
54
|
+
if(directories)
|
|
55
|
+
set_property(
|
|
56
|
+
TARGET ${target}
|
|
57
|
+
APPEND
|
|
58
|
+
PROPERTY INTERFACE_SYSTEM_INCLUDE_DIRECTORIES ${directories}
|
|
59
|
+
)
|
|
60
|
+
endif()
|
|
61
|
+
endif()
|
|
62
|
+
endforeach()
|
|
63
|
+
|
|
64
|
+
add_library(ernie_openexr INTERFACE)
|
|
65
|
+
target_link_libraries(ernie_openexr INTERFACE OpenEXR::OpenEXR)
|
|
66
|
+
|
|
67
|
+
# The zstd built into OpenEXRCore exports its API, so KTX2's zstd supercompression is decoded with
|
|
68
|
+
# it rather than a second copy.
|
|
69
|
+
add_library(ernie_zstd INTERFACE)
|
|
70
|
+
target_include_directories(ernie_zstd SYSTEM INTERFACE "${openexr_SOURCE_DIR}/external/zstd/lib")
|
|
71
|
+
target_link_libraries(ernie_zstd INTERFACE OpenEXR::OpenEXRCore)
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# SPDX-License-Identifier: BSD-3-Clause
|
|
2
|
+
# stb has no releases, so a commit is pinned.
|
|
3
|
+
set(ERNIE_DEP_VERSION_stb
|
|
4
|
+
2c980bb59875b0d32144a71867fbdebb2f77cd20
|
|
5
|
+
CACHE STRING
|
|
6
|
+
"Commit of stb to fetch"
|
|
7
|
+
)
|
|
8
|
+
mark_as_advanced(ERNIE_DEP_VERSION_stb)
|
|
9
|
+
|
|
10
|
+
ernie_fetch(
|
|
11
|
+
stb
|
|
12
|
+
URL https://github.com/nothings/stb/archive/${ERNIE_DEP_VERSION_stb}.tar.gz
|
|
13
|
+
SOURCE_SUBDIR no-build
|
|
14
|
+
)
|
|
15
|
+
|
|
16
|
+
# stb is header-only: its implementations of stb_image (PNG, JPEG) and stb_image_write are compiled
|
|
17
|
+
# once, from a source written into the build tree.
|
|
18
|
+
set(ernie_stb_source "${CMAKE_BINARY_DIR}/stb/stb.cpp")
|
|
19
|
+
file(
|
|
20
|
+
CONFIGURE
|
|
21
|
+
OUTPUT "${ernie_stb_source}"
|
|
22
|
+
CONTENT
|
|
23
|
+
"#define STB_IMAGE_IMPLEMENTATION\n#define STB_IMAGE_WRITE_IMPLEMENTATION\n#include <stb_image.h>\n#include <stb_image_write.h>\n"
|
|
24
|
+
)
|
|
25
|
+
add_library(ernie_stb STATIC "${ernie_stb_source}")
|
|
26
|
+
target_include_directories(ernie_stb SYSTEM PUBLIC "${stb_SOURCE_DIR}")
|
|
27
|
+
target_compile_definitions(ernie_stb PUBLIC STBI_ONLY_PNG STBI_ONLY_JPEG)
|
|
28
|
+
set_target_properties(ernie_stb PROPERTIES POSITION_INDEPENDENT_CODE ON)
|
|
@@ -12,14 +12,10 @@ endif()
|
|
|
12
12
|
set(TRACY_ENABLE ON CACHE BOOL "" FORCE)
|
|
13
13
|
set(TRACY_ON_DEMAND ON CACHE BOOL "" FORCE)
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
FetchContent_Declare(
|
|
15
|
+
ernie_fetch(
|
|
17
16
|
tracy
|
|
18
|
-
|
|
19
|
-
GIT_TAG ${ERNIE_DEP_VERSION_tracy}
|
|
20
|
-
GIT_SHALLOW TRUE
|
|
17
|
+
URL https://github.com/wolfpld/tracy/archive/refs/tags/${ERNIE_DEP_VERSION_tracy}.tar.gz
|
|
21
18
|
)
|
|
22
|
-
FetchContent_MakeAvailable(tracy)
|
|
23
19
|
set_target_properties(
|
|
24
20
|
TracyClient
|
|
25
21
|
PROPERTIES POSITION_INDEPENDENT_CODE ON COMPILE_WARNING_AS_ERROR OFF
|
|
@@ -2,15 +2,11 @@
|
|
|
2
2
|
set(ERNIE_DEP_VERSION_volk vulkan-sdk-1.4.363.0 CACHE STRING "Tag of volk to fetch")
|
|
3
3
|
mark_as_advanced(ERNIE_DEP_VERSION_volk)
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
FetchContent_Declare(
|
|
5
|
+
ernie_fetch(
|
|
7
6
|
volk
|
|
8
|
-
|
|
9
|
-
GIT_TAG ${ERNIE_DEP_VERSION_volk}
|
|
10
|
-
GIT_SHALLOW TRUE
|
|
7
|
+
URL https://github.com/zeux/volk/archive/refs/tags/${ERNIE_DEP_VERSION_volk}.tar.gz
|
|
11
8
|
SOURCE_SUBDIR no-build
|
|
12
9
|
)
|
|
13
|
-
FetchContent_MakeAvailable(volk)
|
|
14
10
|
|
|
15
11
|
# Loads the Vulkan loader at run time, so nothing links against libvulkan.
|
|
16
12
|
add_library(ernie_volk STATIC "${volk_SOURCE_DIR}/volk.c")
|
{ernie_renderer-0.2.0.dev7 → ernie_renderer-0.2.0.dev13}/cmake/third_party/vulkan_headers.cmake
RENAMED
|
@@ -6,15 +6,12 @@ set(ERNIE_DEP_VERSION_vulkan_headers
|
|
|
6
6
|
)
|
|
7
7
|
mark_as_advanced(ERNIE_DEP_VERSION_vulkan_headers)
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
FetchContent_Declare(
|
|
9
|
+
ernie_fetch(
|
|
11
10
|
vulkan_headers
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
GIT_SHALLOW TRUE
|
|
11
|
+
URL
|
|
12
|
+
https://github.com/KhronosGroup/Vulkan-Headers/archive/refs/tags/${ERNIE_DEP_VERSION_vulkan_headers}.tar.gz
|
|
15
13
|
SOURCE_SUBDIR no-build
|
|
16
14
|
)
|
|
17
|
-
FetchContent_MakeAvailable(vulkan_headers)
|
|
18
15
|
|
|
19
16
|
add_library(ernie_vulkan_headers INTERFACE)
|
|
20
17
|
target_include_directories(
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
# SPDX-License-Identifier: BSD-3-Clause
|
|
2
2
|
add_library(ernie_device STATIC vulkan_devices.cpp)
|
|
3
|
-
target_link_libraries(ernie_device PUBLIC
|
|
3
|
+
target_link_libraries(ernie_device PUBLIC ernie_util PRIVATE ernie_volk ernie_build_options)
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
# SPDX-License-Identifier: BSD-3-Clause
|
|
2
|
+
add_library(
|
|
3
|
+
ernie_io
|
|
4
|
+
STATIC
|
|
5
|
+
ies.cpp
|
|
6
|
+
image.cpp
|
|
7
|
+
nanovdb.cpp
|
|
8
|
+
raster.cpp
|
|
9
|
+
texture.cpp
|
|
10
|
+
)
|
|
11
|
+
target_link_libraries(
|
|
12
|
+
ernie_io
|
|
13
|
+
PUBLIC ernie_util
|
|
14
|
+
PRIVATE
|
|
15
|
+
ernie_build_options
|
|
16
|
+
ernie_basisu
|
|
17
|
+
ernie_bc7enc
|
|
18
|
+
ernie_nanovdb
|
|
19
|
+
ernie_openexr
|
|
20
|
+
ernie_stb
|
|
21
|
+
ernie_zstd
|
|
22
|
+
)
|