ernie-renderer 0.2.0.dev119__tar.gz → 0.2.0.dev121__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.dev119 → ernie_renderer-0.2.0.dev121}/CMakeLists.txt +1 -1
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/PKG-INFO +1 -1
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/cmake/ErnieShaders.cmake +11 -5
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/CMakeLists.txt +1 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/render/CMakeLists.txt +4 -14
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/render/device_scene.cpp +3 -6
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/render/device_scene.h +6 -9
- {ernie_renderer-0.2.0.dev119/ernie/render → ernie_renderer-0.2.0.dev121/ernie/render/rt}/bottom_levels.cpp +1 -1
- ernie_renderer-0.2.0.dev121/ernie/render/rt/ray_tracer.cpp +39 -0
- ernie_renderer-0.2.0.dev121/ernie/render/rt/ray_tracer.h +81 -0
- {ernie_renderer-0.2.0.dev119/ernie/render → ernie_renderer-0.2.0.dev121/ernie/render/rt}/top_levels.cpp +6 -5
- {ernie_renderer-0.2.0.dev119/ernie/render → ernie_renderer-0.2.0.dev121/ernie/render/rt}/top_levels.h +5 -15
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/render/transform_graph.cpp +9 -45
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/render/transform_graph.h +8 -0
- ernie_renderer-0.2.0.dev121/ernie/shaders/CMakeLists.txt +11 -0
- {ernie_renderer-0.2.0.dev119/ernie/render/shaders → ernie_renderer-0.2.0.dev121/ernie/shaders/rt}/ray_tracer.slang +56 -63
- {ernie_renderer-0.2.0.dev119/ernie/render/shaders → ernie_renderer-0.2.0.dev121/ernie/shaders/rt}/write_instances.slang +1 -1
- ernie_renderer-0.2.0.dev121/ernie/shaders/scene/geometry.slang +31 -0
- {ernie_renderer-0.2.0.dev119/ernie/render/shaders → ernie_renderer-0.2.0.dev121/ernie/shaders/scene}/shapes.slang +1 -2
- ernie_renderer-0.2.0.dev119/ernie/render/shaders/local.slang → ernie_renderer-0.2.0.dev121/ernie/shaders/scene/transform.slang +48 -8
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/CMakeLists.txt +1 -1
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/render/acceleration_scene_test.cpp +16 -39
- ernie_renderer-0.2.0.dev121/tests/render/shaders_test.cpp +110 -0
- ernie_renderer-0.2.0.dev119/ernie/render/ray_tracer.cpp +0 -41
- ernie_renderer-0.2.0.dev119/ernie/render/ray_tracer.h +0 -23
- ernie_renderer-0.2.0.dev119/ernie/render/shaders/compose.slang +0 -24
- ernie_renderer-0.2.0.dev119/ernie/render/shaders/world.slang +0 -10
- ernie_renderer-0.2.0.dev119/tests/render/ray_tracer_test.cpp +0 -42
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/.clang-format +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/.clang-tidy +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/.dockerignore +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/.gersemirc +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/.gitattributes +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/.github/scripts/coverage_badge.py +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/.github/scripts/install-lavapipe-windows.sh +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/.github/workflows/ci.yml +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/.gitignore +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/.pre-commit-config.yaml +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/CMakePresets.json +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/Dockerfile +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/LICENSE +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/benchmarks/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/benchmarks/bench.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/benchmarks/device/pose_step.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/benchmarks/main.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/benchmarks/render/transform_graph.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/benchmarks/scene/extents.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/benchmarks/scene/storage.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/cmake/EmbedShader.cmake +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/cmake/ErnieConfig.cmake.in +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/cmake/ErnieFetch.cmake +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/cmake/ErnieInstall.cmake +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/cmake/ErniePackaging.cmake +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/cmake/ErnieTesting.cmake +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/cmake/ernie.pc.in +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/cmake/third_party/dear_imgui.cmake +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/cmake/third_party/glfw.cmake +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/cmake/third_party/googletest.cmake +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/cmake/third_party/nanobind.cmake +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/cmake/third_party/openexr.cmake +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/cmake/third_party/slang.cmake +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/cmake/third_party/tracy.cmake +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/docs/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/docs/index.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/docs/requirements.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/app/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/app/imgui_backend.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/app/imgui_backend.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/app/main.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/app/ui.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/app/ui.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/app/viewer.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/app/viewer.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/acceleration.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/acceleration.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/arena.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/arena.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/bindless.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/bindless.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/buffer.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/buffer.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/column.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/column.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/context.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/context.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/cuda.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/cuda.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/device.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/external.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/external.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/image.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/image.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/instance.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/instance.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/kernel.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/kernel.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/profile.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/profile.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/queue.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/queue.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/shader_compiler.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/shader_compiler.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/staging.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/staging.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/vulkan.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/device/vulkan.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/geometry/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/geometry/bounds.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/geometry/triangulation.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/geometry/triangulation.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/graph/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/graph/blackboard.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/graph/dependencies.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/graph/dependencies.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/graph/graph.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/graph/graph.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/graph/pool.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/graph/pool.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/io/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/io/ies.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/io/ies.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/io/image.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/io/image.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/io/nanovdb.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/io/nanovdb.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/io/raster.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/io/raster.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/io/texture.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/io/texture.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/astronomy.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/astronomy.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/atmosphere.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/atmosphere.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/cloud.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/cloud.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/constants.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/reflectance_library.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/reflectance_library.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/reflectance_table.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/regolith.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/regolith.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/scattering.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/scattering.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/solar.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/solar.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/solar_table.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/spectrum.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/physics/spectrum.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/python/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/python/device.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/python/device.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/python/dlpack.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/python/dlpack.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/python/ernie/__init__.py +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/python/module.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/python/scene.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/python/scene.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/render/geometry.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/render/geometry.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/render/instances.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/render/instances.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/render/prim_rows.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/render/prim_rows.h +0 -0
- {ernie_renderer-0.2.0.dev119/ernie/render → ernie_renderer-0.2.0.dev121/ernie/render/rt}/bottom_levels.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/render/scene_columns.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/render/scene_columns.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/animation.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/convert.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/edit_history.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/edit_history.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/extent_cache.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/extent_cache.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/holder_index.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/holder_index.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/inherit.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/json.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/json.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/json_value.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/path.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/path.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/reference.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/reference.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/scene.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/scene.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/camera.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/camera.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/collection.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/geom.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/geom.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/instancer.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/instancer.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/lux.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/lux.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/mesh.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/mesh.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/planet.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/planet.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/registry.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/render.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/render.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/shade.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/shade.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/vol.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema/vol.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/schema.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/storage.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/storage.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/time_samples.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/time_samples.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/tokens.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/usd_plugin.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/validate.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/value.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/view.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/view.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/xform.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/scene/xform.h +0 -0
- {ernie_renderer-0.2.0.dev119/ernie/render/shaders → ernie_renderer-0.2.0.dev121/ernie/shaders/math}/affine.slang +0 -0
- {ernie_renderer-0.2.0.dev119/ernie/render/shaders → ernie_renderer-0.2.0.dev121/ernie/shaders/math}/double_float.slang +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/algorithm.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/bytes.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/disk_cache.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/disk_cache.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/file.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/file.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/glm.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/hash_index.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/library.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/library.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/linear_algebra.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/log.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/log.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/math.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/noise.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/noise.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/numbers.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/on_failure.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/parallel.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/profiler.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/profiler.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/random.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/tensor.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/tensor.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/text.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/version.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/version.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/util/worker_pool.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/mkdocs.yml +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/pyproject.toml +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/app/orbit_camera_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/app/shell_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/app/view_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/app/viewer_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/common.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/consumer/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/consumer/main.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/device/acceleration_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/device/arena_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/device/bindless_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/device/column_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/device/columns.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/device/common.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/device/context_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/device/cuda_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/device/external_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/device/kernel_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/device/pose_step.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/device/profile_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/device/vulkan_devices_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/exr/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/exr/make_exr.py +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/exr/rgb_float_zip.exr +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/exr/rgba_half_window.exr +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/exr/y_half_zips.exr +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/ies/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/ies/downlight_quadrant.ies +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/ies/floodlight_type_b.ies +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/ies/lamp.tilt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/images/grey16.png +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/ktx2/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/ktx2/quadrants_etc1s.ktx2 +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/ktx2/quadrants_uastc_zstd.ktx2 +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/ktx2/tilted_normal_etc1s.ktx2 +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/ktx2/tilted_normal_uastc.ktx2 +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/scenes/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/scenes/invalid/problems.expected +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/scenes/invalid/problems.json +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/scenes/rover.json +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/scenes/rover.saved.json +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/tiff/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/tiff/float_deflate_predictor3.tif +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/tiff/float_raw.tif +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/tiff/int16_bigtiff_bigendian.tif +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/tiff/rgb_lzw_predictor2.tif +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/tiff/rgb_planar_lzw.tif +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/tiff/rgb_planar_raw.tif +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/tiff/rgb_tiled_deflate.tif +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/volumes/cube.nvdb +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/fixtures/volumes/make_nvdb.py +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/geometry/bounds_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/geometry/triangulation_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/graph/dependencies_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/graph/graph_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/io/ies_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/io/image_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/io/nanovdb_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/io/raster_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/io/texture_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/physics/astronomy_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/physics/atmosphere_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/physics/cloud_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/physics/reflectance_library_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/physics/regolith_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/physics/scattering_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/physics/solar_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/physics/spectrum_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/python/conftest.py +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/python/test_device_dlpack.py +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/python/test_device_torch.py +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/python/test_package.py +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/python/test_scene.py +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/python/test_scene_schema.py +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/render/device_scene_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/render/geometry_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/render/scene_columns_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/render/transform_graph_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/edit_history_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/extent_cache_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/inherit_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/instancer_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/json_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/lux_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/mesh_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/path_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/planet_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/reference_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/render_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/scene_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/schema_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/shade_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/storage_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/time_samples_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/vol_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/scene/xform_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/util/algorithm_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/util/bytes_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/util/disk_cache_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/util/file_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/util/hash_index_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/util/linear_algebra_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/util/log_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/util/math_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/util/noise_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/util/parallel_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/util/profiler_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/util/random_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/util/tensor_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/util/text_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/util/version_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/tests/util/worker_pool_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/LICENSE +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/LICENSES/Apache-2.0.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/LICENSES/BSD-3-clause.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/LICENSES/MIT.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/NOTICE +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_astc_cfgs.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_astc_hdr_core.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_astc_helpers.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_containers.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_containers_impl.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_dds_transcoder.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_etc1_mods.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_file_headers.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_idct.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_transcoder.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_transcoder.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_transcoder_internal.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_transcoder_tables_astc.inc +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_transcoder_tables_astc_0_255.inc +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_transcoder_tables_atc_55.inc +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_transcoder_tables_atc_56.inc +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_transcoder_tables_bc7_m5_alpha.inc +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_transcoder_tables_bc7_m5_color.inc +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_transcoder_tables_dxt1_5.inc +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_transcoder_tables_dxt1_6.inc +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_transcoder_tables_pvrtc2_45.inc +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_transcoder_tables_pvrtc2_alpha_33.inc +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_transcoder_uastc.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_xbc7_decoder.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/transcoder/basisu_xbc7_decoder.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/zstd/LICENSE +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/zstd/zstd.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/basisu/zstd/zstd_errors.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/bc7enc/LICENSE +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/bc7enc/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/bc7enc/bc7decomp.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/bc7enc/bc7decomp.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/bc7enc/bc7enc.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/bc7enc/bc7enc.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/bc7enc/rgbcx.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/bc7enc/rgbcx.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/bc7enc/rgbcx_table4.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/bc7enc/rgbcx_table4_small.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/dlpack/LICENSE +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/dlpack/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/dlpack/include/dlpack/dlpack.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/copying.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/common.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/_features.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/_fixes.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/_noise.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/_swizzle.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/_swizzle_func.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/_vectorize.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/compute_common.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/compute_vector_decl.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/compute_vector_relational.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/func_common.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/func_common_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/func_exponential.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/func_exponential_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/func_geometric.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/func_geometric_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/func_integer.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/func_integer_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/func_matrix.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/func_matrix_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/func_packing.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/func_packing_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/func_trigonometric.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/func_trigonometric_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/func_vector_relational.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/func_vector_relational_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/qualifier.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/setup.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_float.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_half.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_half.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat2x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat2x2.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat2x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat2x3.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat2x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat2x4.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat3x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat3x2.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat3x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat3x3.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat3x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat3x4.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat4x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat4x2.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat4x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat4x3.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat4x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat4x4.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_mat4x4_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_quat.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_quat.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_quat_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_vec1.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_vec1.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_vec2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_vec2.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_vec3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_vec3.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_vec4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_vec4.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/detail/type_vec_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/exponential.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/_matrix_vectorize.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_clip_space.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_clip_space.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_common.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_common.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double2x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double2x2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double2x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double2x3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double2x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double2x4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double3x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double3x2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double3x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double3x3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double3x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double3x4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double4x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double4x2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double4x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double4x3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double4x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_double4x4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float2x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float2x2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float2x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float2x3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float2x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float2x4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float3x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float3x2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float3x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float3x3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float3x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float3x4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float4x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float4x2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float4x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float4x3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float4x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_float4x4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int2x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int2x2_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int2x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int2x3_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int2x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int2x4_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int3x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int3x2_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int3x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int3x3_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int3x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int3x4_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int4x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int4x2_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int4x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int4x3_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int4x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_int4x4_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_integer.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_integer.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_projection.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_projection.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_relational.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_relational.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_transform.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_transform.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint2x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint2x2_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint2x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint2x3_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint2x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint2x4_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint3x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint3x2_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint3x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint3x3_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint3x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint3x4_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint4x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint4x2_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint4x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint4x3_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint4x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/matrix_uint4x4_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_common.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_common.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_common_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_double.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_double_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_exponential.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_exponential.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_float.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_float_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_geometric.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_geometric.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_relational.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_relational.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_transform.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_transform.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_trigonometric.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/quaternion_trigonometric.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/scalar_common.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/scalar_common.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/scalar_constants.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/scalar_constants.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/scalar_int_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/scalar_integer.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/scalar_integer.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/scalar_packing.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/scalar_packing.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/scalar_reciprocal.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/scalar_reciprocal.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/scalar_relational.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/scalar_relational.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/scalar_uint_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/scalar_ulp.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/scalar_ulp.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_bool1.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_bool1_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_bool2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_bool2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_bool3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_bool3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_bool4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_bool4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_common.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_common.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_double1.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_double1_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_double2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_double2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_double3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_double3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_double4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_double4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_float1.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_float1_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_float2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_float2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_float3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_float3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_float4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_float4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_int1.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_int1_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_int2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_int2_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_int3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_int3_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_int4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_int4_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_integer.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_integer.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_packing.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_packing.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_reciprocal.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_reciprocal.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_relational.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_relational.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_uint1.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_uint1_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_uint2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_uint2_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_uint3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_uint3_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_uint4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_uint4_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_ulp.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext/vector_ulp.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/ext.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/fwd.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/geometric.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/glm.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/bitfield.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/bitfield.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/color_space.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/color_space.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/constants.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/constants.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/epsilon.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/epsilon.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/integer.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/integer.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/matrix_access.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/matrix_access.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/matrix_integer.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/matrix_inverse.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/matrix_inverse.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/matrix_transform.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/matrix_transform.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/noise.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/noise.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/packing.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/packing.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/quaternion.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/quaternion.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/quaternion_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/random.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/random.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/reciprocal.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/round.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/round.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/type_aligned.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/type_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/type_precision.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/type_ptr.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/type_ptr.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/ulp.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/ulp.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtc/vec1.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/associated_min_max.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/associated_min_max.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/bit.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/bit.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/closest_point.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/closest_point.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/color_encoding.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/color_encoding.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/color_space.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/color_space.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/color_space_YCoCg.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/color_space_YCoCg.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/common.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/common.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/compatibility.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/compatibility.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/component_wise.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/component_wise.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/dual_quaternion.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/dual_quaternion.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/easing.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/easing.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/euler_angles.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/euler_angles.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/extend.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/extend.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/extended_min_max.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/extended_min_max.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/exterior_product.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/exterior_product.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/fast_exponential.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/fast_exponential.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/fast_square_root.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/fast_square_root.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/fast_trigonometry.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/fast_trigonometry.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/float_normalize.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/functions.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/functions.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/gradient_paint.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/gradient_paint.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/handed_coordinate_space.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/handed_coordinate_space.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/hash.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/hash.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/integer.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/integer.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/intersect.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/intersect.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/io.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/io.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/iteration.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/iteration.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/log_base.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/log_base.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/matrix_cross_product.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/matrix_cross_product.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/matrix_decompose.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/matrix_decompose.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/matrix_factorisation.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/matrix_factorisation.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/matrix_interpolation.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/matrix_interpolation.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/matrix_major_storage.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/matrix_major_storage.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/matrix_operation.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/matrix_operation.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/matrix_query.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/matrix_query.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/matrix_transform_2d.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/matrix_transform_2d.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/mixed_product.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/mixed_product.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/norm.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/norm.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/normal.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/normal.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/normalize_dot.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/normalize_dot.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/number_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/optimum_pow.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/optimum_pow.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/orthonormalize.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/orthonormalize.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/pca.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/pca.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/perpendicular.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/perpendicular.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/polar_coordinates.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/polar_coordinates.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/projection.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/projection.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/quaternion.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/quaternion.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/range.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/raw_data.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/raw_data.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/rotate_normalized_axis.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/rotate_normalized_axis.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/rotate_vector.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/rotate_vector.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/scalar_multiplication.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/scalar_relational.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/scalar_relational.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/spline.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/spline.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/std_based_type.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/std_based_type.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/string_cast.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/string_cast.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/structured_bindings.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/structured_bindings.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/texture.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/texture.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/transform.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/transform.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/transform2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/transform2.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/type_aligned.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/type_aligned.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/type_trait.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/type_trait.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/vec_swizzle.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/vector_angle.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/vector_angle.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/vector_query.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/vector_query.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/wrap.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/gtx/wrap.inl +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/integer.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/mat2x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/mat2x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/mat2x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/mat3x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/mat3x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/mat3x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/mat4x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/mat4x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/mat4x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/matrix.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/packing.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/simd/common.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/simd/exponential.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/simd/geometric.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/simd/integer.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/simd/matrix.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/simd/neon.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/simd/packing.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/simd/platform.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/simd/trigonometric.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/simd/vector_relational.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/trigonometric.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/vec2.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/vec3.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/vec4.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/glm/glm/vector_relational.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/json/LICENSE.MIT +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/json/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/json/include/nlohmann/json.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/json/include/nlohmann/json_fwd.hpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/nanovdb/LICENSE +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/nanovdb/PNanoVDB.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/stb/LICENSE +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/stb/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/stb/stb_image.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/stb/stb_image_write.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/stb.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vma/LICENSE.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vma/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vma/include/vk_mem_alloc.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vma.cpp +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/volk/LICENSE.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/volk/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/volk/volk.c +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/volk/volk.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/LICENSE.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/LICENSES/Apache-2.0.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/LICENSES/MIT.txt +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/README.md +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_av1std.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_av1std_decode.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_av1std_encode.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_h264std.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_h264std_decode.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_h264std_encode.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_h265std.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_h265std_decode.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_h265std_encode.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_vp9std.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_vp9std_decode.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vk_video/vulkan_video_codecs_common.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vk_icd.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vk_layer.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vk_platform.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_android.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_beta.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_core.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_directfb.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_fuchsia.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_ggp.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_ios.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_macos.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_metal.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_ohos.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_screen.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_ubm.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_vi.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_wayland.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_win32.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_xcb.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_xlib.h +0 -0
- {ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/third_party/vulkan_headers/include/vulkan/vulkan_xlib_xrandr.h +0 -0
|
@@ -15,7 +15,7 @@ project(
|
|
|
15
15
|
)
|
|
16
16
|
|
|
17
17
|
# Pre-release suffix such as .dev12, written by CI.
|
|
18
|
-
set(ERNIE_VERSION_SUFFIX ".
|
|
18
|
+
set(ERNIE_VERSION_SUFFIX ".dev121" CACHE STRING "Pre-release suffix of Ernie's version")
|
|
19
19
|
set(ERNIE_VERSION "${PROJECT_VERSION}${ERNIE_VERSION_SUFFIX}")
|
|
20
20
|
|
|
21
21
|
option(ERNIE_BUILD_TESTS "Build Ernie's tests" OFF)
|
|
@@ -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.dev121
|
|
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
|
|
@@ -2,16 +2,22 @@
|
|
|
2
2
|
# Slang shaders kept in .slang files and embedded in the library, so editors highlight and
|
|
3
3
|
# resolve them and the program needs no files beside it.
|
|
4
4
|
#
|
|
5
|
-
# ernie_add_shaders(
|
|
6
|
-
#
|
|
5
|
+
# ernie_add_shaders(ernie_shaders math/affine.slang rt/ray_tracer.slang)
|
|
6
|
+
# add_dependencies(ernie_render ernie_shaders)
|
|
7
|
+
# // In C++: #include "ernie/shaders/rt/ray_tracer.h" for ernie::shaders::kRayTracer.
|
|
7
8
|
|
|
8
|
-
#
|
|
9
|
-
#
|
|
9
|
+
# Adds `target`, which writes each file's header beside its path under the build's include
|
|
10
|
+
# directory. Module names are the files' names, so each must be unique.
|
|
10
11
|
function(ernie_add_shaders target)
|
|
11
12
|
set(headers "")
|
|
13
|
+
set(names "")
|
|
12
14
|
foreach(file IN LISTS ARGN)
|
|
13
15
|
get_filename_component(source "${file}" ABSOLUTE)
|
|
14
16
|
get_filename_component(name "${file}" NAME_WE)
|
|
17
|
+
if(name IN_LIST names)
|
|
18
|
+
message(FATAL_ERROR "Two shader modules are named ${name}")
|
|
19
|
+
endif()
|
|
20
|
+
list(APPEND names "${name}")
|
|
15
21
|
file(RELATIVE_PATH relative "${PROJECT_SOURCE_DIR}" "${source}")
|
|
16
22
|
string(REGEX REPLACE "\\.slang$" ".h" relative "${relative}")
|
|
17
23
|
set(header "${PROJECT_BINARY_DIR}/include/${relative}")
|
|
@@ -26,5 +32,5 @@ function(ernie_add_shaders target)
|
|
|
26
32
|
)
|
|
27
33
|
list(APPEND headers "${header}")
|
|
28
34
|
endforeach()
|
|
29
|
-
|
|
35
|
+
add_custom_target(${target} DEPENDS ${headers} SOURCES ${ARGN})
|
|
30
36
|
endfunction()
|
|
@@ -2,27 +2,17 @@
|
|
|
2
2
|
add_library(
|
|
3
3
|
ernie_render
|
|
4
4
|
OBJECT
|
|
5
|
-
bottom_levels.cpp
|
|
6
5
|
device_scene.cpp
|
|
7
6
|
geometry.cpp
|
|
8
7
|
instances.cpp
|
|
9
8
|
prim_rows.cpp
|
|
10
|
-
|
|
9
|
+
rt/bottom_levels.cpp
|
|
10
|
+
rt/ray_tracer.cpp
|
|
11
|
+
rt/top_levels.cpp
|
|
11
12
|
scene_columns.cpp
|
|
12
|
-
top_levels.cpp
|
|
13
13
|
transform_graph.cpp
|
|
14
14
|
)
|
|
15
|
-
|
|
16
|
-
ernie_render
|
|
17
|
-
shaders/affine.slang
|
|
18
|
-
shaders/compose.slang
|
|
19
|
-
shaders/double_float.slang
|
|
20
|
-
shaders/local.slang
|
|
21
|
-
shaders/ray_tracer.slang
|
|
22
|
-
shaders/shapes.slang
|
|
23
|
-
shaders/world.slang
|
|
24
|
-
shaders/write_instances.slang
|
|
25
|
-
)
|
|
15
|
+
add_dependencies(ernie_render ernie_shaders)
|
|
26
16
|
target_link_libraries(
|
|
27
17
|
ernie_render
|
|
28
18
|
PUBLIC ernie_geometry ernie_scene ernie_graph
|
|
@@ -11,8 +11,7 @@ DeviceScene::DeviceScene(DeviceContext& context, Arenas& arenas, const Scene& sc
|
|
|
11
11
|
transforms_(context, arenas, scene, compiler), geometry_(context, arenas, scene),
|
|
12
12
|
instances_(context, arenas) {
|
|
13
13
|
if (context.Capabilities().rayQuery) {
|
|
14
|
-
|
|
15
|
-
tops_ = std::make_unique<TopLevels>(context, compiler);
|
|
14
|
+
tracer_ = std::make_unique<RayTracer>(context, arenas, compiler, geometry_);
|
|
16
15
|
}
|
|
17
16
|
}
|
|
18
17
|
|
|
@@ -26,10 +25,8 @@ Ticket DeviceScene::Execute(const std::function<void(graph::Graph&)>& passes,
|
|
|
26
25
|
instances_.Apply(changes);
|
|
27
26
|
geometry_.AddUploads(graph);
|
|
28
27
|
instances_.AddUploads(graph);
|
|
29
|
-
if (
|
|
30
|
-
|
|
31
|
-
bottoms_->AddBuilds(graph);
|
|
32
|
-
tops_->AddBuild(graph, transforms_, instances_, *bottoms_);
|
|
28
|
+
if (tracer_) {
|
|
29
|
+
tracer_->AddBuild(graph, changes, transforms_, instances_);
|
|
33
30
|
}
|
|
34
31
|
if (passes) {
|
|
35
32
|
passes(graph);
|
|
@@ -14,11 +14,10 @@
|
|
|
14
14
|
|
|
15
15
|
#include "ernie/device/shader_compiler.h"
|
|
16
16
|
#include "ernie/graph/graph.h"
|
|
17
|
-
#include "ernie/render/bottom_levels.h"
|
|
18
17
|
#include "ernie/render/geometry.h"
|
|
19
18
|
#include "ernie/render/instances.h"
|
|
19
|
+
#include "ernie/render/rt/ray_tracer.h"
|
|
20
20
|
#include "ernie/render/scene_columns.h"
|
|
21
|
-
#include "ernie/render/top_levels.h"
|
|
22
21
|
#include "ernie/render/transform_graph.h"
|
|
23
22
|
|
|
24
23
|
#include <functional>
|
|
@@ -30,8 +29,7 @@ namespace ernie {
|
|
|
30
29
|
/// @brief A scene on a device and the graph each frame runs: the columns bound on the device
|
|
31
30
|
/// follow the scene, world transforms compose from them, the geometry and its acceleration
|
|
32
31
|
/// structures follow, and then the frame's own passes run, finding what to trace as a
|
|
33
|
-
/// `
|
|
34
|
-
/// structures yet.
|
|
32
|
+
/// `TraceScene` on the graph's blackboard. Devices without ray queries get no ray tracer yet.
|
|
35
33
|
class DeviceScene {
|
|
36
34
|
public:
|
|
37
35
|
/// @param arenas Where the device columns live; `MemoryUse::Shared` to share them with CUDA.
|
|
@@ -52,9 +50,9 @@ class DeviceScene {
|
|
|
52
50
|
InstanceTable& Instances() {
|
|
53
51
|
return instances_;
|
|
54
52
|
}
|
|
55
|
-
/// @return The
|
|
56
|
-
|
|
57
|
-
return
|
|
53
|
+
/// @return The ray tracer, or null on devices without ray queries.
|
|
54
|
+
RayTracer* Tracer() {
|
|
55
|
+
return tracer_.get();
|
|
58
56
|
}
|
|
59
57
|
/// @return Where the frames' transients come from.
|
|
60
58
|
graph::TransientPool& Pool() {
|
|
@@ -76,8 +74,7 @@ class DeviceScene {
|
|
|
76
74
|
TransformGraph transforms_;
|
|
77
75
|
GeometryPool geometry_;
|
|
78
76
|
InstanceTable instances_;
|
|
79
|
-
std::unique_ptr<
|
|
80
|
-
std::unique_ptr<TopLevels> tops_;
|
|
77
|
+
std::unique_ptr<RayTracer> tracer_;
|
|
81
78
|
};
|
|
82
79
|
|
|
83
80
|
} // namespace ernie
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// SPDX-License-Identifier: BSD-3-Clause
|
|
2
2
|
/// @file bottom_levels.cpp
|
|
3
3
|
/// @brief Building, refitting and compacting each geometry's bottom level as frame-graph passes.
|
|
4
|
-
#include "ernie/render/bottom_levels.h"
|
|
4
|
+
#include "ernie/render/rt/bottom_levels.h"
|
|
5
5
|
|
|
6
6
|
#include "ernie/util/profiler.h"
|
|
7
7
|
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
// SPDX-License-Identifier: BSD-3-Clause
|
|
2
|
+
/// @file ray_tracer.cpp
|
|
3
|
+
/// @brief Keeping the acceleration structures up to date each frame.
|
|
4
|
+
#include "ernie/render/rt/ray_tracer.h"
|
|
5
|
+
|
|
6
|
+
#include "ernie/shaders/rt/ray_tracer.h"
|
|
7
|
+
#include "ernie/shaders/scene/geometry.h"
|
|
8
|
+
#include "ernie/shaders/scene/shapes.h"
|
|
9
|
+
#include "ernie/util/profiler.h"
|
|
10
|
+
|
|
11
|
+
#include <array>
|
|
12
|
+
|
|
13
|
+
namespace ernie {
|
|
14
|
+
|
|
15
|
+
RayTracer::RayTracer(DeviceContext& context, Arenas& arenas, const ShaderCompiler& compiler,
|
|
16
|
+
const GeometryPool& geometry)
|
|
17
|
+
: geometry_(geometry), bottoms_(context, arenas, geometry), tops_(context, compiler) {}
|
|
18
|
+
|
|
19
|
+
std::span<const ShaderModule> RayTracer::Modules() {
|
|
20
|
+
static const std::array modules{shaders::kGeometry, shaders::kShapes, shaders::kRayTracer};
|
|
21
|
+
return modules;
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
void RayTracer::AddBuild(graph::Graph& graph, const GeometryPool::Changes& changes,
|
|
25
|
+
const TransformGraph& transforms, const InstanceTable& instances) {
|
|
26
|
+
ERNIE_ZONE("Update the ray tracer");
|
|
27
|
+
const graph::Graph::ScopeGuard scope = graph.Scope("Ray tracer");
|
|
28
|
+
bottoms_.Apply(changes);
|
|
29
|
+
bottoms_.AddBuilds(graph);
|
|
30
|
+
const graph::Acceleration top = tops_.AddBuild(graph, transforms, instances, bottoms_);
|
|
31
|
+
const DeviceColumn& records = geometry_.Records();
|
|
32
|
+
graph.Board().Put(TraceScene{
|
|
33
|
+
.parameters = {.scene = tops_.Structure()->Address(), .records = records.Address()},
|
|
34
|
+
.top = top,
|
|
35
|
+
.records = graph.Import(records, records.Name()),
|
|
36
|
+
.instances = instances.Count()});
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
} // namespace ernie
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
// SPDX-License-Identifier: BSD-3-Clause
|
|
2
|
+
/// @file ray_tracer.h
|
|
3
|
+
/// @brief The ray tracer: the acceleration structures the scene is traced through, kept up to date
|
|
4
|
+
/// each frame, and the Slang modules its passes trace them with.
|
|
5
|
+
///
|
|
6
|
+
/// const TraceScene& scene = graph.Board().Get<TraceScene>();
|
|
7
|
+
/// graph.Add("Shade", graph::Kind::Compute,
|
|
8
|
+
/// [&](graph::PassBuilder& pass) { scene.Read(pass); ... },
|
|
9
|
+
/// [&](graph::PassContext& pass) { kernel.Dispatch(..., {scene.parameters, ...}); });
|
|
10
|
+
#pragma once
|
|
11
|
+
|
|
12
|
+
#include "ernie/device/shader_compiler.h"
|
|
13
|
+
#include "ernie/graph/graph.h"
|
|
14
|
+
#include "ernie/render/geometry.h"
|
|
15
|
+
#include "ernie/render/instances.h"
|
|
16
|
+
#include "ernie/render/rt/bottom_levels.h"
|
|
17
|
+
#include "ernie/render/rt/top_levels.h"
|
|
18
|
+
#include "ernie/render/transform_graph.h"
|
|
19
|
+
|
|
20
|
+
#include <cstdint>
|
|
21
|
+
#include <span>
|
|
22
|
+
|
|
23
|
+
namespace ernie {
|
|
24
|
+
|
|
25
|
+
/// @brief What a tracing kernel hands `RayTracer`, as ray_tracer.slang's `TracerParameters`.
|
|
26
|
+
struct TracerParameters {
|
|
27
|
+
/// The top level's device address.
|
|
28
|
+
std::uint64_t scene = 0;
|
|
29
|
+
/// `GeometryPool::Records`' device address.
|
|
30
|
+
std::uint64_t records = 0;
|
|
31
|
+
};
|
|
32
|
+
static_assert(sizeof(TracerParameters) == 16);
|
|
33
|
+
|
|
34
|
+
/// @brief What a frame's passes trace, left on the graph's blackboard by `RayTracer::AddBuild`.
|
|
35
|
+
struct TraceScene {
|
|
36
|
+
TracerParameters parameters;
|
|
37
|
+
graph::Acceleration top;
|
|
38
|
+
graph::Buffer records;
|
|
39
|
+
std::uint32_t instances = 0;
|
|
40
|
+
|
|
41
|
+
/// @brief Declares a pass's reads of everything tracing touches.
|
|
42
|
+
void Read(graph::PassBuilder& pass) const {
|
|
43
|
+
pass.Read(top);
|
|
44
|
+
pass.ReadAddress(records);
|
|
45
|
+
}
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
/// @brief The scene's acceleration structures on a device with ray queries: a bottom level for
|
|
49
|
+
/// each geometry, built and compacted as it changes, and a top level over the instances rebuilt
|
|
50
|
+
/// every frame.
|
|
51
|
+
class RayTracer {
|
|
52
|
+
public:
|
|
53
|
+
RayTracer(DeviceContext& context, Arenas& arenas, const ShaderCompiler& compiler,
|
|
54
|
+
const GeometryPool& geometry);
|
|
55
|
+
RayTracer(const RayTracer&) = delete;
|
|
56
|
+
RayTracer& operator=(const RayTracer&) = delete;
|
|
57
|
+
|
|
58
|
+
/// @return The modules, in import order, a tracing kernel compiles with before its own; it
|
|
59
|
+
/// then imports `ray_tracer`.
|
|
60
|
+
static std::span<const ShaderModule> Modules();
|
|
61
|
+
|
|
62
|
+
/// @brief Adds the passes that bring the structures up to date with the frame's geometry
|
|
63
|
+
/// changes, after the transforms and the geometry's and instances' uploads, and puts a
|
|
64
|
+
/// `TraceScene` on the graph's blackboard.
|
|
65
|
+
void AddBuild(graph::Graph& graph, const GeometryPool::Changes& changes,
|
|
66
|
+
const TransformGraph& transforms, const InstanceTable& instances);
|
|
67
|
+
|
|
68
|
+
BottomLevels& Bottoms() {
|
|
69
|
+
return bottoms_;
|
|
70
|
+
}
|
|
71
|
+
const TopLevels& Tops() const {
|
|
72
|
+
return tops_;
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
private:
|
|
76
|
+
const GeometryPool& geometry_;
|
|
77
|
+
BottomLevels bottoms_;
|
|
78
|
+
TopLevels tops_;
|
|
79
|
+
};
|
|
80
|
+
|
|
81
|
+
} // namespace ernie
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
// SPDX-License-Identifier: BSD-3-Clause
|
|
2
2
|
/// @file top_levels.cpp
|
|
3
3
|
/// @brief Writing instance records on the device and building the top level over them.
|
|
4
|
-
#include "ernie/render/top_levels.h"
|
|
4
|
+
#include "ernie/render/rt/top_levels.h"
|
|
5
5
|
|
|
6
|
-
#include "ernie/
|
|
6
|
+
#include "ernie/shaders/rt/write_instances.h"
|
|
7
7
|
#include "ernie/util/profiler.h"
|
|
8
8
|
|
|
9
9
|
#include <algorithm>
|
|
@@ -37,8 +37,9 @@ TopLevels::TopLevels(DeviceContext& context, const ShaderCompiler& compiler)
|
|
|
37
37
|
std::uint32_t{sizeof(WriteParameters)}),
|
|
38
38
|
pool_(context, "top levels") {}
|
|
39
39
|
|
|
40
|
-
|
|
41
|
-
|
|
40
|
+
graph::Acceleration TopLevels::AddBuild(graph::Graph& graph, const TransformGraph& transforms,
|
|
41
|
+
const InstanceTable& instances,
|
|
42
|
+
const BottomLevels& bottoms) {
|
|
42
43
|
ERNIE_ZONE("Prepare the top level");
|
|
43
44
|
const std::uint32_t count = instances.Count();
|
|
44
45
|
const std::uint32_t capacity = top_ ? top_->Sizes().primitives[0] : 0;
|
|
@@ -101,7 +102,7 @@ void TopLevels::AddBuild(graph::Graph& graph, const TransformGraph& transforms,
|
|
|
101
102
|
const graph::BufferSlice space = pass.Get(scratch);
|
|
102
103
|
RecordBuilds(pass.commands, {}, std::span(&recorded, 1), {space.buffer, space.offset});
|
|
103
104
|
});
|
|
104
|
-
|
|
105
|
+
return top;
|
|
105
106
|
}
|
|
106
107
|
|
|
107
108
|
} // namespace ernie
|
|
@@ -8,24 +8,14 @@
|
|
|
8
8
|
#include "ernie/device/kernel.h"
|
|
9
9
|
#include "ernie/device/shader_compiler.h"
|
|
10
10
|
#include "ernie/graph/graph.h"
|
|
11
|
-
#include "ernie/render/bottom_levels.h"
|
|
12
11
|
#include "ernie/render/instances.h"
|
|
12
|
+
#include "ernie/render/rt/bottom_levels.h"
|
|
13
13
|
#include "ernie/render/transform_graph.h"
|
|
14
14
|
|
|
15
|
-
#include <cstdint>
|
|
16
15
|
#include <memory>
|
|
17
16
|
|
|
18
17
|
namespace ernie {
|
|
19
18
|
|
|
20
|
-
/// @brief What a frame's passes trace, left on the graph's blackboard by `TopLevels::AddBuild`.
|
|
21
|
-
struct SceneStructure {
|
|
22
|
-
/// The top level, for passes to read with `Use::Trace`.
|
|
23
|
-
graph::Acceleration top;
|
|
24
|
-
/// Its address, as kernels trace it: `RaytracingAccelerationStructure(address)`.
|
|
25
|
-
std::uint64_t address = 0;
|
|
26
|
-
std::uint32_t instances = 0;
|
|
27
|
-
};
|
|
28
|
-
|
|
29
19
|
/// @brief The scene's top level, rebuilt every frame: a kernel writes each instance's record from
|
|
30
20
|
/// its world transform, its shape transform and its geometry's bottom level, and the build follows.
|
|
31
21
|
/// Instances whose bottom level is not built are switched off. An instance's custom index is its
|
|
@@ -38,10 +28,10 @@ class TopLevels {
|
|
|
38
28
|
TopLevels& operator=(const TopLevels&) = delete;
|
|
39
29
|
|
|
40
30
|
/// @brief Adds the passes that write the instances and build the top level, after the
|
|
41
|
-
/// transforms, the instance uploads and the bottom levels' builds
|
|
42
|
-
///
|
|
43
|
-
|
|
44
|
-
|
|
31
|
+
/// transforms, the instance uploads and the bottom levels' builds.
|
|
32
|
+
/// @return The top level built, for passes to read with `Use::Trace`.
|
|
33
|
+
graph::Acceleration AddBuild(graph::Graph& graph, const TransformGraph& transforms,
|
|
34
|
+
const InstanceTable& instances, const BottomLevels& bottoms);
|
|
45
35
|
|
|
46
36
|
/// @return The top level as last built, or null before the first build.
|
|
47
37
|
const AccelerationStructure* Structure() const {
|
{ernie_renderer-0.2.0.dev119 → ernie_renderer-0.2.0.dev121}/ernie/render/transform_graph.cpp
RENAMED
|
@@ -4,13 +4,11 @@
|
|
|
4
4
|
/// composing it on the device.
|
|
5
5
|
#include "ernie/render/transform_graph.h"
|
|
6
6
|
|
|
7
|
-
#include "ernie/render/shaders/affine.h"
|
|
8
|
-
#include "ernie/render/shaders/compose.h"
|
|
9
|
-
#include "ernie/render/shaders/double_float.h"
|
|
10
|
-
#include "ernie/render/shaders/local.h"
|
|
11
|
-
#include "ernie/render/shaders/world.h"
|
|
12
7
|
#include "ernie/scene/schema/geom.h"
|
|
13
8
|
#include "ernie/scene/tokens.h"
|
|
9
|
+
#include "ernie/shaders/math/affine.h"
|
|
10
|
+
#include "ernie/shaders/math/double_float.h"
|
|
11
|
+
#include "ernie/shaders/scene/transform.h"
|
|
14
12
|
|
|
15
13
|
#include <glm/gtc/matrix_transform.hpp>
|
|
16
14
|
|
|
@@ -22,35 +20,6 @@
|
|
|
22
20
|
namespace ernie {
|
|
23
21
|
namespace {
|
|
24
22
|
|
|
25
|
-
// A program's op kinds: a folded constant, then each `XformOpKind` after it.
|
|
26
|
-
constexpr std::uint32_t kConstant = 0;
|
|
27
|
-
constexpr std::uint32_t kInvert = 1;
|
|
28
|
-
constexpr std::uint32_t kFloatsShift = 8;
|
|
29
|
-
|
|
30
|
-
constexpr std::uint32_t ProgramKind(XformOpKind kind) {
|
|
31
|
-
return 1 + static_cast<std::uint32_t>(kind);
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
/// The op kinds and the program layout, from the constants above, for the kernels to import.
|
|
35
|
-
ShaderModule OpConstants() {
|
|
36
|
-
std::string source;
|
|
37
|
-
const auto constant = [&](const char* name, std::uint32_t value) {
|
|
38
|
-
source +=
|
|
39
|
-
std::string("public static const uint ") + name + " = " + std::to_string(value) + ";\n";
|
|
40
|
-
};
|
|
41
|
-
constant("kConstant", kConstant);
|
|
42
|
-
constant("kTranslate", ProgramKind(XformOpKind::Translate));
|
|
43
|
-
constant("kScale", ProgramKind(XformOpKind::Scale));
|
|
44
|
-
constant("kRotateX", ProgramKind(XformOpKind::RotateX));
|
|
45
|
-
constant("kRotateXYZ", ProgramKind(XformOpKind::RotateXYZ));
|
|
46
|
-
constant("kOrient", ProgramKind(XformOpKind::Orient));
|
|
47
|
-
constant("kInvert", kInvert);
|
|
48
|
-
constant("kFloatsShift", kFloatsShift);
|
|
49
|
-
constant("kMaxOps", TransformGraph::kMaxOps);
|
|
50
|
-
constant("kNone", TransformGraph::kNone);
|
|
51
|
-
return {"ops", std::move(source)};
|
|
52
|
-
}
|
|
53
|
-
|
|
54
23
|
struct LocalParameters {
|
|
55
24
|
VkDeviceAddress slots, programs, lengths, locals;
|
|
56
25
|
std::uint32_t count, pad;
|
|
@@ -61,11 +30,6 @@ struct ComposeParameters {
|
|
|
61
30
|
};
|
|
62
31
|
static_assert(sizeof(TransformGraph::DeviceOp) == 112);
|
|
63
32
|
|
|
64
|
-
std::vector<std::uint32_t> Compile(const ShaderCompiler& compiler, const ShaderModule& kernel) {
|
|
65
|
-
const std::array modules{shaders::kAffine, shaders::kDoubleFloat, OpConstants(), kernel};
|
|
66
|
-
return compiler.Spirv(modules, "main");
|
|
67
|
-
}
|
|
68
|
-
|
|
69
33
|
/// @return A transform's top three rows, each value split exactly into a high and a low float.
|
|
70
34
|
TransformGraph::SplitRows Split(const glm::dmat4& m) {
|
|
71
35
|
TransformGraph::SplitRows rows{};
|
|
@@ -114,9 +78,9 @@ glm::uvec3 Groups(std::size_t threads) {
|
|
|
114
78
|
TransformGraph::TransformGraph(DeviceContext& context, Arenas& arenas, const Scene& scene,
|
|
115
79
|
const ShaderCompiler& compiler)
|
|
116
80
|
: context_(context), arenas_(arenas), scene_(scene), uploader_(context, context.Main()),
|
|
117
|
-
local_(context,
|
|
81
|
+
local_(context, compiler.Spirv(WorldModules(), "Local"), "local transforms",
|
|
118
82
|
sizeof(LocalParameters)),
|
|
119
|
-
compose_(context,
|
|
83
|
+
compose_(context, compiler.Spirv(WorldModules(), "Compose"), "world transforms",
|
|
120
84
|
sizeof(ComposeParameters)) {
|
|
121
85
|
const auto column = [&](std::string_view name, DType type, std::vector<std::int64_t> element) {
|
|
122
86
|
return std::make_unique<DeviceColumn>(arenas, name, type, std::move(element), 0);
|
|
@@ -166,7 +130,7 @@ void TransformGraph::SetOrigin(const glm::dvec3& origin) {
|
|
|
166
130
|
}
|
|
167
131
|
|
|
168
132
|
std::span<const ShaderModule> TransformGraph::WorldModules() {
|
|
169
|
-
static const std::array modules{shaders::kAffine, shaders::kDoubleFloat, shaders::
|
|
133
|
+
static const std::array modules{shaders::kAffine, shaders::kDoubleFloat, shaders::kTransform};
|
|
170
134
|
return modules;
|
|
171
135
|
}
|
|
172
136
|
|
|
@@ -401,7 +365,7 @@ TransformGraph::Built TransformGraph::BuildProgram(std::uint32_t slot) const {
|
|
|
401
365
|
// Runs of the host's ops become one matrix each.
|
|
402
366
|
const auto fold = [&] {
|
|
403
367
|
if (folded != glm::dmat4(1.0) && built.onDevice) {
|
|
404
|
-
push({.kind =
|
|
368
|
+
push({.kind = kConstantOp, .constant = Split(folded)});
|
|
405
369
|
folded = glm::dmat4(1.0);
|
|
406
370
|
}
|
|
407
371
|
};
|
|
@@ -415,8 +379,8 @@ TransformGraph::Built TransformGraph::BuildProgram(std::uint32_t slot) const {
|
|
|
415
379
|
fold();
|
|
416
380
|
const DeviceColumn& column = *bound->column;
|
|
417
381
|
const auto floats = static_cast<std::uint32_t>(Floats(column));
|
|
418
|
-
push({.kind =
|
|
419
|
-
.flags = (op.invert ?
|
|
382
|
+
push({.kind = OpKind(op.kind),
|
|
383
|
+
.flags = (op.invert ? kInvertFlag : 0u) | floats << kFloatsShift,
|
|
420
384
|
.source = bound->address + row * column.RowBytes()});
|
|
421
385
|
}
|
|
422
386
|
fold();
|
|
@@ -63,6 +63,14 @@ class TransformGraph {
|
|
|
63
63
|
bool operator==(const DeviceOp&) const = default;
|
|
64
64
|
};
|
|
65
65
|
using Program = std::array<DeviceOp, kMaxOps>;
|
|
66
|
+
/// A `DeviceOp::kind`: a folded constant, then each `XformOpKind` after it.
|
|
67
|
+
static constexpr std::uint32_t kConstantOp = 0;
|
|
68
|
+
static constexpr std::uint32_t OpKind(XformOpKind kind) {
|
|
69
|
+
return 1 + static_cast<std::uint32_t>(kind);
|
|
70
|
+
}
|
|
71
|
+
/// `DeviceOp::flags`' inverting bit, and where its float count starts.
|
|
72
|
+
static constexpr std::uint32_t kInvertFlag = 1;
|
|
73
|
+
static constexpr std::uint32_t kFloatsShift = 8;
|
|
66
74
|
|
|
67
75
|
TransformGraph(DeviceContext& context, Arenas& arenas, const Scene& scene,
|
|
68
76
|
const ShaderCompiler& compiler);
|
|
@@ -1,19 +1,20 @@
|
|
|
1
1
|
// SPDX-License-Identifier: BSD-3-Clause
|
|
2
2
|
/// @file ray_tracer.slang
|
|
3
|
-
/// @brief `
|
|
4
|
-
/// its
|
|
5
|
-
|
|
6
|
-
import
|
|
3
|
+
/// @brief `RayTracer`, what every pass traces the scene through: inline ray queries against the
|
|
4
|
+
/// top level, each procedural candidate solved exactly as its unit shape.
|
|
5
|
+
///
|
|
6
|
+
/// import ray_tracer;
|
|
7
|
+
/// RayTracer tracer = RayTracer(parameters.tracer);
|
|
8
|
+
/// Hit hit = tracer.TraceClosest(ray, 0xff);
|
|
9
|
+
/// if (hit.found) { float3 n = tracer.WorldNormal(hit); }
|
|
10
|
+
import geometry;
|
|
7
11
|
import shapes;
|
|
8
12
|
|
|
9
|
-
///
|
|
10
|
-
public struct
|
|
11
|
-
|
|
12
|
-
public
|
|
13
|
-
public
|
|
14
|
-
public uint triangleCount;
|
|
15
|
-
public float* vertices;
|
|
16
|
-
public uint* indices;
|
|
13
|
+
/// What a pass hands its tracer, as the C++ `TracerParameters`.
|
|
14
|
+
public struct TracerParameters {
|
|
15
|
+
/// The top level's device address.
|
|
16
|
+
public uint64_t scene;
|
|
17
|
+
public GeometryRecord* records;
|
|
17
18
|
};
|
|
18
19
|
|
|
19
20
|
/// What a ray hit: where along it, which instance, primitive and geometry, and the transforms
|
|
@@ -32,45 +33,14 @@ public struct Hit {
|
|
|
32
33
|
public float3x4 worldToObject;
|
|
33
34
|
};
|
|
34
35
|
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
/// @return The nearest hit along the ray among instances in `mask`.
|
|
38
|
-
Hit TraceClosest(RayDesc ray, uint mask);
|
|
39
|
-
/// @return Whether anything in `mask` blocks the ray, for visibility.
|
|
40
|
-
bool TraceAny(RayDesc ray, uint mask);
|
|
41
|
-
}
|
|
36
|
+
public struct RayTracer {
|
|
37
|
+
TracerParameters parameters;
|
|
42
38
|
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
public uint64_t scene;
|
|
46
|
-
public GeometryRecord* records;
|
|
47
|
-
|
|
48
|
-
/// Runs the query, solving each procedural candidate exactly; `Flags` may end it at the first
|
|
49
|
-
/// hit. NVIDIA's compiler fails on `CandidateObjectRay*`: the object ray comes from the
|
|
50
|
-
/// candidate's matrix instead.
|
|
51
|
-
void Run<let Flags : int>(inout RayQuery<Flags> query, RayDesc ray, uint mask,
|
|
52
|
-
out ShapeHit nearest) {
|
|
53
|
-
query.TraceRayInline(RaytracingAccelerationStructure(scene), RAY_FLAG_NONE, mask, ray);
|
|
54
|
-
nearest.t = ray.TMax;
|
|
55
|
-
nearest.normal = float3(0, 0, 1);
|
|
56
|
-
while (query.Proceed()) {
|
|
57
|
-
if (query.CandidateType() != CANDIDATE_PROCEDURAL_PRIMITIVE) {
|
|
58
|
-
continue;
|
|
59
|
-
}
|
|
60
|
-
GeometryRecord record = records[query.CandidateInstanceID()];
|
|
61
|
-
float3x4 toObject = query.CandidateWorldToObject3x4();
|
|
62
|
-
float3 o = mul(toObject, float4(query.WorldRayOrigin(), 1));
|
|
63
|
-
float3 d = mul(toObject, float4(query.WorldRayDirection(), 0));
|
|
64
|
-
// Object-space distances along the transformed direction are the ray's own.
|
|
65
|
-
ShapeHit hit = nearest;
|
|
66
|
-
hit.t = query.CommittedRayT();
|
|
67
|
-
if (IntersectShape(record.kind, record.halfLength, o, d, ray.TMin, hit)) {
|
|
68
|
-
query.CommitProceduralPrimitiveHit(hit.t);
|
|
69
|
-
nearest = hit;
|
|
70
|
-
}
|
|
71
|
-
}
|
|
39
|
+
public __init(TracerParameters parameters) {
|
|
40
|
+
this.parameters = parameters;
|
|
72
41
|
}
|
|
73
42
|
|
|
43
|
+
/// @return The nearest hit along the ray among instances in `mask`.
|
|
74
44
|
public Hit TraceClosest(RayDesc ray, uint mask) {
|
|
75
45
|
RayQuery<RAY_FLAG_NONE> query;
|
|
76
46
|
ShapeHit nearest;
|
|
@@ -90,28 +60,51 @@ public struct HardwareRayQuery : IRayTracer {
|
|
|
90
60
|
return hit;
|
|
91
61
|
}
|
|
92
62
|
|
|
63
|
+
/// @return Whether anything in `mask` blocks the ray, for visibility.
|
|
93
64
|
public bool TraceAny(RayDesc ray, uint mask) {
|
|
94
65
|
RayQuery<RAY_FLAG_ACCEPT_FIRST_HIT_AND_END_SEARCH> query;
|
|
95
66
|
ShapeHit nearest;
|
|
96
67
|
Run(query, ray, mask, nearest);
|
|
97
68
|
return query.CommittedStatus() != COMMITTED_NOTHING;
|
|
98
69
|
}
|
|
99
|
-
}
|
|
100
70
|
|
|
101
|
-
/// @return The surface's geometric normal at a hit, in the scene's frame, facing out of an
|
|
102
|
-
/// implicit shape or by a triangle's winding.
|
|
103
|
-
public float3 WorldNormal(Hit hit
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
71
|
+
/// @return The surface's geometric normal at a hit, in the scene's frame, facing out of an
|
|
72
|
+
/// implicit shape or by a triangle's winding.
|
|
73
|
+
public float3 WorldNormal(Hit hit) {
|
|
74
|
+
float3 normal = hit.objectNormal;
|
|
75
|
+
GeometryRecord record = parameters.records[hit.geometry];
|
|
76
|
+
if (record.kind == kTriangles) {
|
|
77
|
+
float3 p[3];
|
|
78
|
+
Corners(record, hit.primitive, p);
|
|
79
|
+
normal = cross(p[1] - p[0], p[2] - p[0]);
|
|
80
|
+
}
|
|
81
|
+
// Normals take the inverse transpose: a row vector times the world-to-object matrix.
|
|
82
|
+
return normalize(mul(normal, (float3x3)hit.worldToObject));
|
|
83
|
+
}
|
|
84
|
+
|
|
85
|
+
/// Runs the query; `Flags` may end it at the first hit. NVIDIA's compiler fails on
|
|
86
|
+
/// `CandidateObjectRay*`: the object ray comes from the candidate's matrix instead.
|
|
87
|
+
void Run<let Flags : int>(inout RayQuery<Flags> query, RayDesc ray, uint mask,
|
|
88
|
+
out ShapeHit nearest) {
|
|
89
|
+
query.TraceRayInline(RaytracingAccelerationStructure(parameters.scene), RAY_FLAG_NONE,
|
|
90
|
+
mask, ray);
|
|
91
|
+
nearest.t = ray.TMax;
|
|
92
|
+
nearest.normal = float3(0, 0, 1);
|
|
93
|
+
while (query.Proceed()) {
|
|
94
|
+
if (query.CandidateType() != CANDIDATE_PROCEDURAL_PRIMITIVE) {
|
|
95
|
+
continue;
|
|
96
|
+
}
|
|
97
|
+
GeometryRecord record = parameters.records[query.CandidateInstanceID()];
|
|
98
|
+
float3x4 toObject = query.CandidateWorldToObject3x4();
|
|
99
|
+
float3 o = mul(toObject, float4(query.WorldRayOrigin(), 1));
|
|
100
|
+
float3 d = mul(toObject, float4(query.WorldRayDirection(), 0));
|
|
101
|
+
// Object-space distances along the transformed direction are the ray's own.
|
|
102
|
+
ShapeHit hit = nearest;
|
|
103
|
+
hit.t = query.CommittedRayT();
|
|
104
|
+
if (IntersectShape(record.kind, record.halfLength, o, d, ray.TMin, hit)) {
|
|
105
|
+
query.CommitProceduralPrimitiveHit(hit.t);
|
|
106
|
+
nearest = hit;
|
|
107
|
+
}
|
|
112
108
|
}
|
|
113
|
-
normal = cross(p[1] - p[0], p[2] - p[0]);
|
|
114
109
|
}
|
|
115
|
-
// Normals take the inverse transpose: a row vector times the world-to-object matrix.
|
|
116
|
-
return normalize(mul(normal, (float3x3)hit.worldToObject));
|
|
117
110
|
}
|