ernie-renderer 0.2.0.dev161__tar.gz → 0.2.0.dev166__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.dev161 → ernie_renderer-0.2.0.dev166}/CMakeLists.txt +1 -1
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/PKG-INFO +1 -1
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/benchmarks/CMakeLists.txt +2 -1
- ernie_renderer-0.2.0.dev166/benchmarks/app/viewer_frame.cpp +139 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/ui.h +4 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/viewer.cpp +179 -65
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/viewer.h +69 -12
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/buffer.cpp +7 -1
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/context.cpp +1 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/context.h +8 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/image.cpp +6 -1
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/graph/graph.cpp +8 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/graph/graph.h +2 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/device_scene.cpp +31 -9
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/device_scene.h +18 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/rt/camera_pass.cpp +11 -1
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/rt/camera_pass.h +4 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/rt/ray_tracer.cpp +4 -2
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/rt/ray_tracer.h +3 -1
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/rt/top_levels.cpp +5 -2
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/rt/top_levels.h +4 -1
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/transform_graph.cpp +5 -3
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/transform_graph.h +7 -1
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/shaders/sensors/camera.slang +7 -1
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/app/viewer_test.cpp +69 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/render/device_scene_test.cpp +48 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/.clang-format +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/.clang-tidy +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/.dockerignore +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/.gersemirc +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/.gitattributes +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/.github/scripts/coverage_badge.py +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/.github/scripts/install-lavapipe-windows.sh +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/.github/workflows/ci.yml +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/.gitignore +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/.pre-commit-config.yaml +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/CMakePresets.json +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/Dockerfile +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/LICENSE +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/benchmarks/bench.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/benchmarks/device/pose_step.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/benchmarks/main.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/benchmarks/render/batch_step.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/benchmarks/render/hide_seek.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/benchmarks/render/transform_graph.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/benchmarks/scene/extents.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/benchmarks/scene/storage.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/EmbedFile.cmake +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/EmbedShader.cmake +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/ErnieConfig.cmake.in +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/ErnieFetch.cmake +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/ErnieInstall.cmake +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/ErniePackaging.cmake +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/ErnieShaders.cmake +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/ErnieTesting.cmake +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/ernie.pc.in +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/third_party/dear_imgui.cmake +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/third_party/fonts.cmake +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/third_party/glfw.cmake +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/third_party/googletest.cmake +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/third_party/nanobind.cmake +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/third_party/openexr.cmake +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/third_party/slang.cmake +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/cmake/third_party/tracy.cmake +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/demos/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/demos/basics/demo_basics_bounce.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/docs/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/docs/index.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/docs/requirements.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/capture.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/capture.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/create.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/create.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/demo.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/demo.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/icons.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/imgui_backend.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/imgui_backend.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/main.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/timeline.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/timeline.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/app/ui.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/acceleration.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/acceleration.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/arena.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/arena.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/bindless.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/bindless.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/buffer.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/column.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/column.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/commands.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/commands.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/cuda.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/cuda.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/device.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/external.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/external.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/image.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/instance.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/instance.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/kernel.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/kernel.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/profile.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/profile.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/queue.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/queue.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/shader_compiler.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/shader_compiler.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/staging.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/staging.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/vulkan.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/device/vulkan.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/geometry/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/geometry/bounds.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/geometry/triangulation.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/geometry/triangulation.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/graph/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/graph/blackboard.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/graph/dependencies.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/graph/dependencies.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/graph/pool.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/graph/pool.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/io/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/io/ies.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/io/ies.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/io/image.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/io/image.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/io/nanovdb.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/io/nanovdb.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/io/raster.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/io/raster.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/io/texture.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/io/texture.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/astronomy.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/astronomy.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/atmosphere.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/atmosphere.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/cloud.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/cloud.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/constants.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/reflectance_library.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/reflectance_library.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/reflectance_table.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/regolith.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/regolith.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/scattering.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/scattering.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/solar.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/solar.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/solar_table.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/spectrum.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/physics/spectrum.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/python/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/python/device.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/python/device.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/python/dlpack.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/python/dlpack.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/python/ernie/__init__.py +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/python/module.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/python/render.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/python/render.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/python/scene.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/python/scene.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/geometry.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/geometry.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/instances.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/instances.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/prim_rows.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/prim_rows.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/products.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/products.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/renderer.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/renderer.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/rt/bottom_levels.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/rt/bottom_levels.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/scene_columns.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/render/scene_columns.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/animation.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/convert.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/edit_history.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/edit_history.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/extent_cache.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/extent_cache.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/holder_index.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/holder_index.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/inherit.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/json.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/json.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/json_value.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/path.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/path.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/reference.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/reference.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/scene.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/scene.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/camera.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/camera.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/collection.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/geom.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/geom.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/instancer.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/instancer.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/lux.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/lux.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/mesh.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/mesh.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/planet.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/planet.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/registry.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/render.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/render.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/shade.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/shade.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/vol.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema/vol.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/schema.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/storage.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/storage.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/time_samples.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/time_samples.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/tokens.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/usd_plugin.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/validate.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/value.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/view.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/view.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/xform.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/scene/xform.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/shaders/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/shaders/device/bindless.slang +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/shaders/device/buffer_ref.slang +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/shaders/math/affine.slang +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/shaders/math/double_float.slang +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/shaders/rt/ray_tracer.slang +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/shaders/rt/write_instances.slang +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/shaders/scene/geometry.slang +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/shaders/scene/instance_colours.slang +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/shaders/scene/shapes.slang +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/shaders/scene/transform.slang +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/shaders/scene/world_layout.slang +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/shaders/sensors/lens.slang +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/shaders/shared.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/shaders/spectral/spectrum.slang +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/algorithm.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/bytes.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/disk_cache.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/disk_cache.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/file.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/file.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/glm.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/hash_index.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/library.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/library.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/linear_algebra.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/log.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/log.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/math.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/noise.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/noise.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/numbers.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/on_failure.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/parallel.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/process.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/process.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/profiler.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/profiler.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/random.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/tensor.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/tensor.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/text.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/version.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/version.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/ernie/util/worker_pool.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/mkdocs.yml +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/pyproject.toml +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/app/capture_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/app/demo_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/app/orbit_camera_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/app/shell_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/app/timeline_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/app/view_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/common.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/consumer/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/consumer/first_render.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/consumer/main.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/device/acceleration_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/device/arena_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/device/bindless_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/device/column_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/device/columns.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/device/common.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/device/context_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/device/cuda_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/device/external_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/device/kernel_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/device/pose_step.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/device/profile_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/device/vulkan_devices_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/exr/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/exr/make_exr.py +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/exr/rgb_float_zip.exr +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/exr/rgba_half_window.exr +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/exr/y_half_zips.exr +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/ies/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/ies/downlight_quadrant.ies +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/ies/floodlight_type_b.ies +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/ies/lamp.tilt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/images/grey16.png +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/ktx2/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/ktx2/quadrants_etc1s.ktx2 +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/ktx2/quadrants_uastc_zstd.ktx2 +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/ktx2/tilted_normal_etc1s.ktx2 +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/ktx2/tilted_normal_uastc.ktx2 +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/scenes/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/scenes/invalid/problems.expected +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/scenes/invalid/problems.json +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/scenes/rover.json +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/scenes/rover.saved.json +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/tiff/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/tiff/float_deflate_predictor3.tif +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/tiff/float_raw.tif +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/tiff/int16_bigtiff_bigendian.tif +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/tiff/rgb_lzw_predictor2.tif +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/tiff/rgb_planar_lzw.tif +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/tiff/rgb_planar_raw.tif +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/tiff/rgb_tiled_deflate.tif +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/volumes/cube.nvdb +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/fixtures/volumes/make_nvdb.py +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/geometry/bounds_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/geometry/triangulation_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/graph/dependencies_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/graph/graph_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/io/ies_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/io/image_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/io/nanovdb_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/io/raster_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/io/texture_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/physics/astronomy_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/physics/atmosphere_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/physics/cloud_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/physics/reflectance_library_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/physics/regolith_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/physics/scattering_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/physics/solar_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/physics/spectrum_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/python/conftest.py +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/python/test_device_dlpack.py +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/python/test_device_torch.py +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/python/test_package.py +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/python/test_render.py +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/python/test_scene.py +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/python/test_scene_schema.py +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/render/acceleration_scene_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/render/camera_pass_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/render/common.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/render/geometry_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/render/gradients_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/render/ray_tracer_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/render/renderer_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/render/scene_columns_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/render/shaders_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/render/transform_graph_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/edit_history_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/extent_cache_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/inherit_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/instancer_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/json_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/lux_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/mesh_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/path_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/planet_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/reference_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/render_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/scene_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/schema_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/shade_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/storage_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/time_samples_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/vol_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/scene/xform_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/util/algorithm_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/util/bytes_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/util/disk_cache_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/util/file_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/util/hash_index_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/util/linear_algebra_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/util/log_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/util/math_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/util/noise_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/util/parallel_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/util/profiler_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/util/random_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/util/tensor_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/util/text_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/util/version_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/tests/util/worker_pool_test.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/CMakeLists.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/LICENSE +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/LICENSES/Apache-2.0.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/LICENSES/BSD-3-clause.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/LICENSES/MIT.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/NOTICE +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_astc_cfgs.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_astc_hdr_core.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_astc_helpers.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_containers.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_containers_impl.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_dds_transcoder.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_etc1_mods.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_file_headers.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_idct.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_transcoder.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_transcoder.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_transcoder_internal.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_transcoder_tables_astc.inc +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_transcoder_tables_astc_0_255.inc +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_transcoder_tables_atc_55.inc +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_transcoder_tables_atc_56.inc +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_transcoder_tables_bc7_m5_alpha.inc +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_transcoder_tables_bc7_m5_color.inc +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_transcoder_tables_dxt1_5.inc +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_transcoder_tables_dxt1_6.inc +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_transcoder_tables_pvrtc2_45.inc +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_transcoder_tables_pvrtc2_alpha_33.inc +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_transcoder_uastc.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_xbc7_decoder.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/transcoder/basisu_xbc7_decoder.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/zstd/LICENSE +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/zstd/zstd.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/basisu/zstd/zstd_errors.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/bc7enc/LICENSE +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/bc7enc/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/bc7enc/bc7decomp.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/bc7enc/bc7decomp.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/bc7enc/bc7enc.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/bc7enc/bc7enc.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/bc7enc/rgbcx.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/bc7enc/rgbcx.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/bc7enc/rgbcx_table4.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/bc7enc/rgbcx_table4_small.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/dlpack/LICENSE +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/dlpack/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/dlpack/include/dlpack/dlpack.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/copying.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/common.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/_features.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/_fixes.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/_noise.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/_swizzle.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/_swizzle_func.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/_vectorize.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/compute_common.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/compute_vector_decl.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/compute_vector_relational.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/func_common.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/func_common_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/func_exponential.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/func_exponential_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/func_geometric.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/func_geometric_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/func_integer.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/func_integer_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/func_matrix.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/func_matrix_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/func_packing.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/func_packing_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/func_trigonometric.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/func_trigonometric_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/func_vector_relational.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/func_vector_relational_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/qualifier.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/setup.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_float.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_half.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_half.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat2x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat2x2.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat2x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat2x3.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat2x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat2x4.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat3x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat3x2.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat3x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat3x3.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat3x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat3x4.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat4x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat4x2.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat4x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat4x3.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat4x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat4x4.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_mat4x4_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_quat.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_quat.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_quat_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_vec1.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_vec1.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_vec2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_vec2.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_vec3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_vec3.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_vec4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_vec4.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/detail/type_vec_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/exponential.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/_matrix_vectorize.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_clip_space.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_clip_space.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_common.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_common.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double2x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double2x2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double2x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double2x3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double2x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double2x4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double3x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double3x2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double3x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double3x3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double3x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double3x4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double4x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double4x2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double4x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double4x3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double4x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_double4x4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float2x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float2x2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float2x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float2x3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float2x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float2x4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float3x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float3x2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float3x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float3x3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float3x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float3x4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float4x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float4x2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float4x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float4x3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float4x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_float4x4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int2x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int2x2_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int2x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int2x3_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int2x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int2x4_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int3x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int3x2_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int3x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int3x3_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int3x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int3x4_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int4x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int4x2_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int4x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int4x3_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int4x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_int4x4_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_integer.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_integer.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_projection.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_projection.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_relational.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_relational.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_transform.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_transform.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint2x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint2x2_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint2x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint2x3_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint2x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint2x4_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint3x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint3x2_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint3x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint3x3_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint3x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint3x4_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint4x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint4x2_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint4x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint4x3_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint4x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/matrix_uint4x4_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_common.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_common.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_common_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_double.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_double_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_exponential.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_exponential.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_float.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_float_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_geometric.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_geometric.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_relational.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_relational.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_transform.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_transform.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_trigonometric.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/quaternion_trigonometric.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/scalar_common.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/scalar_common.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/scalar_constants.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/scalar_constants.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/scalar_int_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/scalar_integer.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/scalar_integer.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/scalar_packing.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/scalar_packing.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/scalar_reciprocal.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/scalar_reciprocal.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/scalar_relational.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/scalar_relational.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/scalar_uint_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/scalar_ulp.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/scalar_ulp.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_bool1.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_bool1_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_bool2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_bool2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_bool3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_bool3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_bool4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_bool4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_common.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_common.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_double1.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_double1_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_double2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_double2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_double3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_double3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_double4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_double4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_float1.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_float1_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_float2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_float2_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_float3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_float3_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_float4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_float4_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_int1.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_int1_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_int2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_int2_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_int3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_int3_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_int4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_int4_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_integer.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_integer.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_packing.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_packing.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_reciprocal.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_reciprocal.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_relational.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_relational.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_uint1.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_uint1_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_uint2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_uint2_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_uint3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_uint3_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_uint4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_uint4_sized.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_ulp.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext/vector_ulp.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/ext.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/fwd.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/geometric.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/glm.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/bitfield.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/bitfield.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/color_space.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/color_space.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/constants.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/constants.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/epsilon.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/epsilon.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/integer.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/integer.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/matrix_access.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/matrix_access.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/matrix_integer.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/matrix_inverse.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/matrix_inverse.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/matrix_transform.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/matrix_transform.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/noise.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/noise.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/packing.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/packing.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/quaternion.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/quaternion.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/quaternion_simd.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/random.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/random.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/reciprocal.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/round.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/round.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/type_aligned.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/type_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/type_precision.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/type_ptr.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/type_ptr.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/ulp.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/ulp.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtc/vec1.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/associated_min_max.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/associated_min_max.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/bit.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/bit.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/closest_point.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/closest_point.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/color_encoding.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/color_encoding.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/color_space.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/color_space.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/color_space_YCoCg.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/color_space_YCoCg.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/common.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/common.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/compatibility.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/compatibility.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/component_wise.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/component_wise.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/dual_quaternion.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/dual_quaternion.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/easing.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/easing.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/euler_angles.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/euler_angles.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/extend.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/extend.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/extended_min_max.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/extended_min_max.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/exterior_product.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/exterior_product.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/fast_exponential.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/fast_exponential.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/fast_square_root.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/fast_square_root.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/fast_trigonometry.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/fast_trigonometry.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/float_normalize.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/functions.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/functions.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/gradient_paint.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/gradient_paint.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/handed_coordinate_space.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/handed_coordinate_space.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/hash.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/hash.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/integer.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/integer.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/intersect.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/intersect.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/io.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/io.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/iteration.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/iteration.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/log_base.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/log_base.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/matrix_cross_product.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/matrix_cross_product.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/matrix_decompose.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/matrix_decompose.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/matrix_factorisation.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/matrix_factorisation.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/matrix_interpolation.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/matrix_interpolation.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/matrix_major_storage.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/matrix_major_storage.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/matrix_operation.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/matrix_operation.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/matrix_query.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/matrix_query.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/matrix_transform_2d.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/matrix_transform_2d.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/mixed_product.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/mixed_product.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/norm.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/norm.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/normal.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/normal.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/normalize_dot.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/normalize_dot.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/number_precision.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/optimum_pow.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/optimum_pow.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/orthonormalize.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/orthonormalize.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/pca.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/pca.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/perpendicular.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/perpendicular.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/polar_coordinates.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/polar_coordinates.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/projection.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/projection.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/quaternion.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/quaternion.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/range.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/raw_data.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/raw_data.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/rotate_normalized_axis.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/rotate_normalized_axis.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/rotate_vector.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/rotate_vector.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/scalar_multiplication.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/scalar_relational.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/scalar_relational.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/spline.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/spline.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/std_based_type.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/std_based_type.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/string_cast.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/string_cast.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/structured_bindings.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/structured_bindings.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/texture.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/texture.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/transform.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/transform.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/transform2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/transform2.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/type_aligned.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/type_aligned.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/type_trait.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/type_trait.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/vec_swizzle.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/vector_angle.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/vector_angle.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/vector_query.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/vector_query.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/wrap.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/gtx/wrap.inl +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/integer.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/mat2x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/mat2x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/mat2x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/mat3x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/mat3x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/mat3x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/mat4x2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/mat4x3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/mat4x4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/matrix.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/packing.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/simd/common.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/simd/exponential.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/simd/geometric.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/simd/integer.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/simd/matrix.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/simd/neon.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/simd/packing.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/simd/platform.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/simd/trigonometric.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/simd/vector_relational.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/trigonometric.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/vec2.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/vec3.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/vec4.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/glm/glm/vector_relational.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/json/LICENSE.MIT +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/json/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/json/include/nlohmann/json.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/json/include/nlohmann/json_fwd.hpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/nanovdb/LICENSE +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/nanovdb/PNanoVDB.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/stb/LICENSE +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/stb/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/stb/stb_image.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/stb/stb_image_write.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/stb.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vma/LICENSE.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vma/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vma/include/vk_mem_alloc.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vma.cpp +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/volk/LICENSE.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/volk/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/volk/volk.c +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/volk/volk.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/LICENSE.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/LICENSES/Apache-2.0.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/LICENSES/MIT.txt +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/README.md +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_av1std.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_av1std_decode.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_av1std_encode.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_h264std.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_h264std_decode.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_h264std_encode.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_h265std.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_h265std_decode.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_h265std_encode.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_vp9std.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vk_video/vulkan_video_codec_vp9std_decode.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vk_video/vulkan_video_codecs_common.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vk_icd.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vk_layer.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vk_platform.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_android.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_beta.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_core.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_directfb.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_fuchsia.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_ggp.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_ios.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_macos.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_metal.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_ohos.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_screen.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_ubm.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_vi.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_wayland.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_win32.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_xcb.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/third_party/vulkan_headers/include/vulkan/vulkan_xlib.h +0 -0
- {ernie_renderer-0.2.0.dev161 → ernie_renderer-0.2.0.dev166}/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 ".dev166" 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.dev166
|
|
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,6 +2,7 @@
|
|
|
2
2
|
add_executable(
|
|
3
3
|
ernie_benchmarks
|
|
4
4
|
main.cpp
|
|
5
|
+
app/viewer_frame.cpp
|
|
5
6
|
device/pose_step.cpp
|
|
6
7
|
render/batch_step.cpp
|
|
7
8
|
render/hide_seek.cpp
|
|
@@ -11,5 +12,5 @@ add_executable(
|
|
|
11
12
|
)
|
|
12
13
|
target_link_libraries(
|
|
13
14
|
ernie_benchmarks
|
|
14
|
-
PRIVATE ernie_static ernie_volk ernie_vma ernie_build_options
|
|
15
|
+
PRIVATE ernie_viewer ernie_static ernie_volk ernie_vma ernie_build_options
|
|
15
16
|
)
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
// SPDX-License-Identifier: BSD-3-Clause
|
|
2
|
+
/// @file viewer_frame.cpp
|
|
3
|
+
/// @brief The viewer's frame: an offscreen 1920 x 1080 viewer over a scene of a few hundred
|
|
4
|
+
/// prims, eco mode off, its time split by host and device profiler zone. `app.viewer_frame`
|
|
5
|
+
/// traces apart from the UI where the device has a compute queue; `app.viewer_frame_sync` traces
|
|
6
|
+
/// every frame before its UI.
|
|
7
|
+
#include "benchmarks/bench.h"
|
|
8
|
+
#include "ernie/app/viewer.h"
|
|
9
|
+
#include "ernie/scene/schema/geom.h"
|
|
10
|
+
#include "ernie/scene/schema/planet.h"
|
|
11
|
+
#include "ernie/scene/xform.h"
|
|
12
|
+
#include "ernie/util/profiler.h"
|
|
13
|
+
|
|
14
|
+
#include <algorithm>
|
|
15
|
+
#include <cstdio>
|
|
16
|
+
#include <map>
|
|
17
|
+
#include <string>
|
|
18
|
+
#include <string_view>
|
|
19
|
+
#include <vector>
|
|
20
|
+
|
|
21
|
+
namespace ernie::bench {
|
|
22
|
+
namespace {
|
|
23
|
+
|
|
24
|
+
constexpr int kGroups = 20;
|
|
25
|
+
constexpr int kShapesPerGroup = 15;
|
|
26
|
+
/// Frames drawn before measuring, while pipelines compile and the layout settles.
|
|
27
|
+
constexpr std::uint64_t kWarmup = 30;
|
|
28
|
+
constexpr std::uint64_t kMeasured = 200;
|
|
29
|
+
|
|
30
|
+
void BuildScene(Scene& scene) {
|
|
31
|
+
GroundPlane::Define(scene, "/World/Ground");
|
|
32
|
+
for (int group = 0; group < kGroups; ++group) {
|
|
33
|
+
const std::string root = "/World/Group" + std::to_string(group);
|
|
34
|
+
Xform::Define(scene, root);
|
|
35
|
+
SetXform(scene, root, {.translate = glm::dvec3(3.0 * (group % 5), 3.0 * (group / 5), 0)});
|
|
36
|
+
for (int shape = 0; shape < kShapesPerGroup; ++shape) {
|
|
37
|
+
const std::string path = root + "/Shape" + std::to_string(shape);
|
|
38
|
+
if (shape % 2 == 0) {
|
|
39
|
+
Sphere::Define(scene, path).SetRadius(0.2);
|
|
40
|
+
} else {
|
|
41
|
+
Cube::Define(scene, path).SetSize(0.3);
|
|
42
|
+
}
|
|
43
|
+
SetXform(scene, path,
|
|
44
|
+
{.translate = glm::dvec3(0.4 * (shape % 4), 0.4 * (shape / 4), 0.5)});
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
scene.Update();
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
/// The average milliseconds a frame spends in each zone at most `deepest` deep, by name, in the
|
|
51
|
+
/// order they first end.
|
|
52
|
+
std::vector<std::pair<std::string, double>>
|
|
53
|
+
Average(const std::vector<profiler::Frame>& frames,
|
|
54
|
+
std::vector<profiler::Zone> profiler::Frame::* zones, std::uint32_t deepest) {
|
|
55
|
+
std::map<std::string, double> totals;
|
|
56
|
+
std::vector<std::string> order;
|
|
57
|
+
std::size_t counted = 0;
|
|
58
|
+
for (const profiler::Frame& frame : frames) {
|
|
59
|
+
// GPU zones of the newest frames may not have arrived.
|
|
60
|
+
if ((frame.*zones).empty()) {
|
|
61
|
+
continue;
|
|
62
|
+
}
|
|
63
|
+
++counted;
|
|
64
|
+
for (const profiler::Zone& zone : frame.*zones) {
|
|
65
|
+
if (zone.thread != 0 || zone.depth > deepest) {
|
|
66
|
+
continue;
|
|
67
|
+
}
|
|
68
|
+
const std::string name = std::string(2 * zone.depth, ' ') + zone.name;
|
|
69
|
+
if (!totals.contains(name)) {
|
|
70
|
+
order.push_back(name);
|
|
71
|
+
}
|
|
72
|
+
totals[name] += static_cast<double>(zone.end - zone.start);
|
|
73
|
+
}
|
|
74
|
+
}
|
|
75
|
+
std::vector<std::pair<std::string, double>> averages;
|
|
76
|
+
for (const std::string& name : order) {
|
|
77
|
+
averages.emplace_back(name, totals[name] / static_cast<double>(counted) * 1e-6);
|
|
78
|
+
}
|
|
79
|
+
return averages;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
Timing RunViewerFrame(bool async) {
|
|
83
|
+
Scene scene;
|
|
84
|
+
BuildScene(scene);
|
|
85
|
+
app::ViewerOptions options{
|
|
86
|
+
.size = {1920, 1080}, .offscreen = true, .frames = kWarmup, .asyncRender = async};
|
|
87
|
+
options.shell.display.eco = false;
|
|
88
|
+
// Zones every frame, not only while the Profiler panel's tab shows.
|
|
89
|
+
options.shell.profile = true;
|
|
90
|
+
profiler::SetHistory(kMeasured);
|
|
91
|
+
app::Viewer viewer(scene, options);
|
|
92
|
+
// A prim selected, as while working, so Properties draws its fields.
|
|
93
|
+
viewer.GetShell().Selected().Set("/World/Group0/Shape0");
|
|
94
|
+
viewer.Run();
|
|
95
|
+
profiler::Clear();
|
|
96
|
+
profiler::SetEnabled(true);
|
|
97
|
+
viewer.RunFrames(kMeasured);
|
|
98
|
+
profiler::SetEnabled(false);
|
|
99
|
+
const std::vector<profiler::Frame> frames = profiler::Frames();
|
|
100
|
+
std::vector<double> durations;
|
|
101
|
+
for (const profiler::Frame& frame : frames) {
|
|
102
|
+
durations.push_back(static_cast<double>(frame.end - frame.start) * 1e-6);
|
|
103
|
+
}
|
|
104
|
+
std::ranges::sort(durations);
|
|
105
|
+
double frameMs = 0.0;
|
|
106
|
+
for (const double ms : durations) {
|
|
107
|
+
frameMs += ms;
|
|
108
|
+
}
|
|
109
|
+
frameMs /= static_cast<double>(durations.size());
|
|
110
|
+
std::printf(" median %.3f ms, slowest %.3f ms a frame\n", durations[durations.size() / 2],
|
|
111
|
+
durations.back());
|
|
112
|
+
// A trace writes its pose first: the frames that started one.
|
|
113
|
+
const auto traced = std::ranges::count_if(frames, [](const profiler::Frame& frame) {
|
|
114
|
+
return std::ranges::any_of(frame.cpu, [](const profiler::Zone& zone) {
|
|
115
|
+
return std::string_view(zone.name) == "Write the viewport pose";
|
|
116
|
+
});
|
|
117
|
+
});
|
|
118
|
+
std::printf(" %zu frames of 1920 x 1080, %d prims, %s: %.3f ms a frame, %.0f frames and "
|
|
119
|
+
"%.0f traces a second\n",
|
|
120
|
+
frames.size(), kGroups * (kShapesPerGroup + 1) + 1,
|
|
121
|
+
viewer.AsyncRender() ? "tracing apart from the UI" : "tracing each frame", frameMs,
|
|
122
|
+
1e3 / frameMs,
|
|
123
|
+
static_cast<double>(traced) / static_cast<double>(frames.size()) * 1e3 / frameMs);
|
|
124
|
+
for (const auto& [title, zones, deepest] :
|
|
125
|
+
{std::tuple("Host", &profiler::Frame::cpu, 2u), {"Device", &profiler::Frame::gpu, 2u}}) {
|
|
126
|
+
std::printf(" %s\n", title);
|
|
127
|
+
for (const auto& [name, ms] : Average(frames, zones, deepest)) {
|
|
128
|
+
std::printf(" %-44s %8.3f ms\n", name.c_str(), ms);
|
|
129
|
+
}
|
|
130
|
+
}
|
|
131
|
+
return {.ms = frameMs, .targetMs = 1.0};
|
|
132
|
+
}
|
|
133
|
+
|
|
134
|
+
const bool kRegistered = Register("app.viewer_frame", [] { return RunViewerFrame(true); });
|
|
135
|
+
const bool kRegisteredSync =
|
|
136
|
+
Register("app.viewer_frame_sync", [] { return RunViewerFrame(false); });
|
|
137
|
+
|
|
138
|
+
} // namespace
|
|
139
|
+
} // namespace ernie::bench
|
|
@@ -494,6 +494,10 @@ class Shell {
|
|
|
494
494
|
bool TakeScreenshot() {
|
|
495
495
|
return std::exchange(screenshot_, false);
|
|
496
496
|
}
|
|
497
|
+
/// @return Whether a screenshot is asked for this frame, leaving the request.
|
|
498
|
+
bool ScreenshotRequested() const {
|
|
499
|
+
return screenshot_;
|
|
500
|
+
}
|
|
497
501
|
void RequestScreenshot() {
|
|
498
502
|
screenshot_ = true;
|
|
499
503
|
}
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
#include <imgui.h>
|
|
15
15
|
|
|
16
16
|
#include <charconv>
|
|
17
|
+
#include <cstring>
|
|
17
18
|
#include <stdexcept>
|
|
18
19
|
#include <string>
|
|
19
20
|
#include <vector>
|
|
@@ -105,6 +106,12 @@ Viewer::Viewer(Scene& scene, const ViewerOptions& options)
|
|
|
105
106
|
if (deviceScene_->Tracer() != nullptr) {
|
|
106
107
|
heap_ = std::make_unique<BindlessHeap>(*context_);
|
|
107
108
|
camera_ = std::make_unique<CameraPass>(*context_, compiler, *heap_);
|
|
109
|
+
// On one queue, a trace and the UI run in turn whatever the order: tracing apart
|
|
110
|
+
// would only show each image a frame later.
|
|
111
|
+
async_ = options.asyncRender && &context_->Compute() != &context_->Main();
|
|
112
|
+
if (async_) {
|
|
113
|
+
deviceScene_->SetQueue(context_->Compute());
|
|
114
|
+
}
|
|
108
115
|
}
|
|
109
116
|
sampler_ = std::make_unique<Sampler>(
|
|
110
117
|
*context_, SamplerDescription{.filter = Filter::Nearest, .address = Address::Clamp},
|
|
@@ -114,8 +121,12 @@ Viewer::Viewer(Scene& scene, const ViewerOptions& options)
|
|
|
114
121
|
}
|
|
115
122
|
|
|
116
123
|
Viewer::~Viewer() {
|
|
117
|
-
// Frames in flight sample the viewport and read the frame's columns.
|
|
118
|
-
Quietly([this] {
|
|
124
|
+
// Frames and traces in flight sample the viewport and read the frame's columns.
|
|
125
|
+
Quietly([this] {
|
|
126
|
+
for (const Queue* queue : context_->Queues()) {
|
|
127
|
+
queue->Last().Wait();
|
|
128
|
+
}
|
|
129
|
+
});
|
|
119
130
|
}
|
|
120
131
|
|
|
121
132
|
void Viewer::Run() {
|
|
@@ -123,6 +134,13 @@ void Viewer::Run() {
|
|
|
123
134
|
}
|
|
124
135
|
}
|
|
125
136
|
|
|
137
|
+
void Viewer::RunFrames(std::uint64_t count) {
|
|
138
|
+
for (std::uint64_t frame = 0; frame < count && !presenter_->CloseRequested() && shell_->Open();
|
|
139
|
+
++frame) {
|
|
140
|
+
Step();
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
|
|
126
144
|
Tensor Viewer::ReadImage(const DeviceImage& image, const Ticket& drawn) {
|
|
127
145
|
const glm::uvec2 size(image.Description().extent);
|
|
128
146
|
const std::uint64_t bytes = std::uint64_t{4} * size.x * size.y;
|
|
@@ -166,7 +184,7 @@ void Viewer::Capture(const Ticket& drawn) {
|
|
|
166
184
|
if (shell_->TakeScreenshot()) {
|
|
167
185
|
try {
|
|
168
186
|
const std::filesystem::path path = CapturePath(".png", 0);
|
|
169
|
-
WritePng(path, ReadImage(*
|
|
187
|
+
WritePng(path, ReadImage(*slots_[shown_].image, drawn));
|
|
170
188
|
shell_->AddRecentCapture(path);
|
|
171
189
|
} catch (const std::exception& error) {
|
|
172
190
|
shell_->Log().Error(std::string("Capturing: ") + error.what());
|
|
@@ -194,7 +212,7 @@ void Viewer::RecordFrame(const Ticket& drawn) {
|
|
|
194
212
|
std::array<char, 32> name{};
|
|
195
213
|
std::snprintf(name.data(), name.size(), "frame_%04lld.png",
|
|
196
214
|
static_cast<long long>(recording.done));
|
|
197
|
-
WritePng(recording.folder / name.data(), ReadImage(*
|
|
215
|
+
WritePng(recording.folder / name.data(), ReadImage(*slots_[shown_].image, drawn));
|
|
198
216
|
++recording.done;
|
|
199
217
|
recording.next += recording.request.every;
|
|
200
218
|
if (recording.done >= recording.total || shell_->stopRecording) {
|
|
@@ -281,7 +299,10 @@ bool Viewer::Step() {
|
|
|
281
299
|
ERNIE_ZONE("Update the scene");
|
|
282
300
|
scene_.Update();
|
|
283
301
|
}
|
|
284
|
-
|
|
302
|
+
{
|
|
303
|
+
ERNIE_ZONE("Show the viewport");
|
|
304
|
+
ShowViewport();
|
|
305
|
+
}
|
|
285
306
|
{
|
|
286
307
|
ERNIE_ZONE("Build the UI's draw data");
|
|
287
308
|
ImGui::Render();
|
|
@@ -307,12 +328,22 @@ bool Viewer::Step() {
|
|
|
307
328
|
Ticket drawn;
|
|
308
329
|
{
|
|
309
330
|
ERNIE_ZONE("Run the frame");
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
|
|
313
|
-
|
|
314
|
-
|
|
315
|
-
|
|
331
|
+
if (tracingNow_) {
|
|
332
|
+
deviceScene_->Follow(shell_->Camera().Eye());
|
|
333
|
+
const std::size_t slot = *tracingNow_;
|
|
334
|
+
slots_[slot].traced = TraceViewport(slot);
|
|
335
|
+
// The UI shows it this frame, waiting for it, or once it has finished.
|
|
336
|
+
if (slot == shown_) {
|
|
337
|
+
traced_ = true;
|
|
338
|
+
} else {
|
|
339
|
+
tracing_.push_back(slot);
|
|
340
|
+
}
|
|
341
|
+
} else if (!camera_ && !ecoPaused_) {
|
|
342
|
+
// The device scene still follows the scene, with nothing to trace.
|
|
343
|
+
deviceScene_->Step([](graph::Graph&) {}, recorded_);
|
|
344
|
+
}
|
|
345
|
+
drawn = DrawUi(data, *target);
|
|
346
|
+
slots_[shown_].sampled = drawn;
|
|
316
347
|
}
|
|
317
348
|
inFlight_.push_back(drawn);
|
|
318
349
|
if (const std::optional<Shell::Pick> pick = shell_->TakePick()) {
|
|
@@ -326,7 +357,10 @@ bool Viewer::Step() {
|
|
|
326
357
|
ERNIE_ZONE("Present");
|
|
327
358
|
presenter_->Present(drawn);
|
|
328
359
|
}
|
|
329
|
-
|
|
360
|
+
{
|
|
361
|
+
ERNIE_ZONE("Free retired objects");
|
|
362
|
+
context_->Collect();
|
|
363
|
+
}
|
|
330
364
|
++frames_;
|
|
331
365
|
return shell_->Open() && (options_.frames == 0 || frames_ < options_.frames);
|
|
332
366
|
}
|
|
@@ -335,47 +369,97 @@ void Viewer::ShowViewport() {
|
|
|
335
369
|
const auto [position, size] = shell_->Viewport();
|
|
336
370
|
const ImVec2 scale = ImGui::GetIO().DisplayFramebufferScale;
|
|
337
371
|
const glm::uvec2 pixels(std::max(1.0f, size.x * scale.x), std::max(1.0f, size.y * scale.y));
|
|
338
|
-
if (!
|
|
372
|
+
if (!slots_[0].image || glm::uvec2(slots_[0].image->Description().extent) != pixels) {
|
|
339
373
|
ResizeViewport(pixels);
|
|
340
374
|
}
|
|
341
|
-
|
|
375
|
+
ecoPaused_ = EcoPause();
|
|
376
|
+
shell_->SetEcoPaused(ecoPaused_);
|
|
377
|
+
ChooseSlots();
|
|
378
|
+
ImGui::GetBackgroundDrawList()->AddImage(slots_[shown_].texture, position,
|
|
342
379
|
{position.x + size.x, position.y + size.y});
|
|
343
380
|
}
|
|
344
381
|
|
|
382
|
+
void Viewer::ChooseSlots() {
|
|
383
|
+
tracingNow_.reset();
|
|
384
|
+
if (!camera_) {
|
|
385
|
+
return;
|
|
386
|
+
}
|
|
387
|
+
// Traces finish in order on their queue: the newest finished one is shown.
|
|
388
|
+
while (!tracing_.empty() && slots_[tracing_.front()].traced.Done()) {
|
|
389
|
+
shown_ = tracing_.front();
|
|
390
|
+
tracing_.pop_front();
|
|
391
|
+
traced_ = true;
|
|
392
|
+
}
|
|
393
|
+
if (ecoPaused_) {
|
|
394
|
+
return;
|
|
395
|
+
}
|
|
396
|
+
// A trace takes a slot neither shown nor tracing, so their images stay whole.
|
|
397
|
+
std::size_t next = 0;
|
|
398
|
+
while (next == shown_ || std::ranges::find(tracing_, next) != tracing_.end()) {
|
|
399
|
+
++next;
|
|
400
|
+
}
|
|
401
|
+
const bool capturing = recording_ || shell_->ScreenshotRequested();
|
|
402
|
+
if (!async_ || capturing || !traced_) {
|
|
403
|
+
// This frame's own image, which the UI waits for; older traces, still running, show
|
|
404
|
+
// nothing newer.
|
|
405
|
+
tracingNow_ = next;
|
|
406
|
+
shown_ = next;
|
|
407
|
+
tracing_.clear();
|
|
408
|
+
} else if (tracing_.size() < kSlots - 1) {
|
|
409
|
+
tracingNow_ = next;
|
|
410
|
+
}
|
|
411
|
+
}
|
|
412
|
+
|
|
345
413
|
void Viewer::ResizeViewport(glm::uvec2 pixels) {
|
|
346
414
|
ERNIE_ZONE("Resize the viewport");
|
|
347
|
-
// Frames in flight may still
|
|
348
|
-
context_->
|
|
349
|
-
|
|
350
|
-
|
|
415
|
+
// Frames and traces in flight may still use the old images.
|
|
416
|
+
for (const Queue* queue : context_->Queues()) {
|
|
417
|
+
queue->Last().Wait();
|
|
418
|
+
}
|
|
419
|
+
tracing_.clear();
|
|
420
|
+
traced_ = false;
|
|
421
|
+
for (ViewportSlot& slot : slots_) {
|
|
422
|
+
slot.traced = {};
|
|
423
|
+
slot.sampled = {};
|
|
424
|
+
if (slot.image) {
|
|
425
|
+
renderer_->RemoveTexture(slot.texture);
|
|
426
|
+
if (heap_) {
|
|
427
|
+
heap_->RemoveStorageImage(slot.storage);
|
|
428
|
+
}
|
|
429
|
+
}
|
|
430
|
+
slot.image = std::make_unique<DeviceImage>(
|
|
431
|
+
*context_,
|
|
432
|
+
ImageDescription{.format = ImageFormat::Rgba8Unorm,
|
|
433
|
+
.extent = {pixels, 1},
|
|
434
|
+
.usage = ImageUsage::Sampled | ImageUsage::Storage},
|
|
435
|
+
"Viewport");
|
|
436
|
+
slot.texture = renderer_->AddTexture(slot.image->View(), sampler_->Handle());
|
|
351
437
|
if (heap_) {
|
|
352
|
-
heap_->
|
|
438
|
+
slot.storage = heap_->AddStorageImage(*slot.image);
|
|
439
|
+
slot.prims = std::make_unique<DeviceColumn>(*arenas_, "viewport prims", DType::UInt32,
|
|
440
|
+
std::vector<std::int64_t>{},
|
|
441
|
+
std::uint64_t{pixels.x} * pixels.y);
|
|
442
|
+
if (!slot.pose) {
|
|
443
|
+
slot.pose = std::make_unique<Buffer>(*context_, kPoseBytes, MemoryUse::Upload,
|
|
444
|
+
"viewport pose");
|
|
445
|
+
}
|
|
353
446
|
}
|
|
354
447
|
}
|
|
355
|
-
|
|
356
|
-
|
|
357
|
-
ImageDescription{.format = ImageFormat::Rgba8Unorm,
|
|
358
|
-
.extent = {pixels, 1},
|
|
359
|
-
.usage = ImageUsage::Sampled | ImageUsage::Storage},
|
|
360
|
-
"Viewport");
|
|
361
|
-
viewportTexture_ = renderer_->AddTexture(viewport_->View(), sampler_->Handle());
|
|
362
|
-
if (heap_) {
|
|
363
|
-
viewportImage_ = heap_->AddStorageImage(*viewport_);
|
|
364
|
-
prims_ = std::make_unique<DeviceColumn>(*arenas_, "viewport prims", DType::UInt32,
|
|
365
|
-
std::vector<std::int64_t>{},
|
|
366
|
-
std::uint64_t{pixels.x} * pixels.y);
|
|
367
|
-
}
|
|
448
|
+
// The recorded frames name the old images.
|
|
449
|
+
++recorded_;
|
|
368
450
|
}
|
|
369
451
|
|
|
370
452
|
void Viewer::Pick(const Shell::Pick& pick, const Ticket& drawn) {
|
|
371
|
-
|
|
453
|
+
const ViewportSlot& shown = slots_[shown_];
|
|
454
|
+
if (!shown.prims) {
|
|
372
455
|
return;
|
|
373
456
|
}
|
|
374
|
-
const
|
|
457
|
+
const DeviceColumn& prims = *shown.prims;
|
|
458
|
+
const glm::uvec2 size(shown.image->Description().extent);
|
|
375
459
|
const glm::uvec2 pixel = glm::min(glm::uvec2(pick.at * glm::vec2(size)), size - 1u);
|
|
376
460
|
const std::uint64_t at = std::uint64_t{pixel.y} * size.x + pixel.x;
|
|
377
|
-
Readback readback(*context_, context_->Main(),
|
|
378
|
-
|
|
461
|
+
Readback readback(*context_, context_->Main(), prims.Storage(),
|
|
462
|
+
prims.Range().offset + at * sizeof(std::uint32_t), sizeof(std::uint32_t),
|
|
379
463
|
std::span(&drawn, 1));
|
|
380
464
|
const std::uint32_t slot = readback.Values<std::uint32_t>().front();
|
|
381
465
|
const std::optional<PrimId> prim = scene_.Store().PrimAtSlot(slot);
|
|
@@ -387,7 +471,7 @@ bool Viewer::EcoPause() {
|
|
|
387
471
|
const ViewState now{.version = scene_.Store().Version(),
|
|
388
472
|
.camera = orbit.Transform(),
|
|
389
473
|
.fov = orbit.verticalFov,
|
|
390
|
-
.size = glm::uvec2(
|
|
474
|
+
.size = glm::uvec2(slots_[0].image->Description().extent)};
|
|
391
475
|
stillFrames_ = lastView_ == now ? stillFrames_ + 1 : 0;
|
|
392
476
|
lastView_ = now;
|
|
393
477
|
const ViewportDisplay& display = shell_->Display();
|
|
@@ -395,37 +479,62 @@ bool Viewer::EcoPause() {
|
|
|
395
479
|
stillFrames_ >= static_cast<std::uint64_t>(std::max(display.ecoFrames, 1));
|
|
396
480
|
}
|
|
397
481
|
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
.background = glm::vec3(shell_->GetTheme().viewport),
|
|
409
|
-
.prims = graph.Import(*prims_)};
|
|
410
|
-
const glm::uvec2 size(viewport_->Description().extent);
|
|
411
|
-
camera_->Add(graph,
|
|
412
|
-
{.cameraToWorld = orbit.Transform(),
|
|
413
|
-
.size = size,
|
|
414
|
-
.lens = MakePinhole(orbit.verticalFov, size)},
|
|
415
|
-
outputs);
|
|
416
|
-
return *outputs.colour;
|
|
482
|
+
Ticket Viewer::TraceViewport(std::size_t index) {
|
|
483
|
+
const OrbitCamera& orbit = shell_->Camera();
|
|
484
|
+
ViewportSlot& slot = slots_[index];
|
|
485
|
+
const glm::uvec2 size(slot.image->Description().extent);
|
|
486
|
+
const RecordedView view{.size = size,
|
|
487
|
+
.fov = orbit.verticalFov,
|
|
488
|
+
.background = glm::vec3(shell_->GetTheme().viewport)};
|
|
489
|
+
if (recordedView_ != view) {
|
|
490
|
+
recordedView_ = view;
|
|
491
|
+
++recorded_;
|
|
417
492
|
}
|
|
418
|
-
|
|
419
|
-
|
|
420
|
-
|
|
421
|
-
|
|
422
|
-
|
|
423
|
-
|
|
424
|
-
|
|
493
|
+
{
|
|
494
|
+
// Written in place from the host once the slot's last trace, which read it, is done:
|
|
495
|
+
// the submission makes it visible to this one.
|
|
496
|
+
ERNIE_ZONE("Write the viewport pose");
|
|
497
|
+
if (slot.traced.timeline != nullptr) {
|
|
498
|
+
slot.traced.Wait();
|
|
499
|
+
}
|
|
500
|
+
const glm::dmat4 relative =
|
|
501
|
+
glm::translate(glm::dmat4(1.0), -deviceScene_->Transforms().Origin()) *
|
|
502
|
+
orbit.Transform();
|
|
503
|
+
const std::array<glm::vec4, 3> rows = ToAffineRows(relative);
|
|
504
|
+
std::memcpy(slot.pose->Mapped().data(), rows.data(), kPoseBytes);
|
|
505
|
+
slot.pose->Flush(0, kPoseBytes);
|
|
506
|
+
}
|
|
507
|
+
// After the UI frames that sampled the slot's last image.
|
|
508
|
+
const std::span<const Ticket> sampled =
|
|
509
|
+
slot.sampled.timeline != nullptr ? std::span(&slot.sampled, 1) : std::span<const Ticket>();
|
|
510
|
+
return deviceScene_->Step(
|
|
511
|
+
[&](graph::Graph& graph) {
|
|
512
|
+
CameraOutputs outputs{.colour = graph.Import(*slot.image, "viewport"),
|
|
513
|
+
.colourIndex = slot.storage,
|
|
514
|
+
.background = view.background,
|
|
515
|
+
.prims = graph.Import(*slot.prims)};
|
|
516
|
+
camera_->Add(graph,
|
|
517
|
+
{.cameraToWorld = orbit.Transform(),
|
|
518
|
+
.size = size,
|
|
519
|
+
.lens = MakePinhole(orbit.verticalFov, size),
|
|
520
|
+
.pose = graph.Import(*slot.pose, 0, kPoseBytes, "viewport pose")},
|
|
521
|
+
outputs);
|
|
522
|
+
},
|
|
523
|
+
recorded_ * kSlots + index, sampled);
|
|
425
524
|
}
|
|
426
525
|
|
|
427
|
-
|
|
428
|
-
|
|
526
|
+
Ticket Viewer::DrawUi(ImDrawData& data, const FrameTarget& target) {
|
|
527
|
+
graph::Graph graph(*context_, deviceScene_->Pool());
|
|
528
|
+
const ViewportSlot& shown = slots_[shown_];
|
|
529
|
+
graph::Image viewport = graph.Import(*shown.image, "viewport");
|
|
530
|
+
if (!camera_) {
|
|
531
|
+
graph.Add(
|
|
532
|
+
"Viewport", graph::Kind::Copy,
|
|
533
|
+
[&](graph::PassBuilder& pass) { viewport = pass.Write(viewport, graph::Use::CopyDst); },
|
|
534
|
+
[this, viewport](graph::PassContext& pass) {
|
|
535
|
+
pass.Clear(viewport, shell_->GetTheme().viewport);
|
|
536
|
+
});
|
|
537
|
+
}
|
|
429
538
|
graph.Add(
|
|
430
539
|
"UI", graph::Kind::Raster,
|
|
431
540
|
[&](graph::PassBuilder& pass) {
|
|
@@ -439,6 +548,11 @@ void Viewer::AddPasses(graph::Graph& graph, ImDrawData& data, const FrameTarget&
|
|
|
439
548
|
renderer_->Record(pass.commands.Handle(), data, target,
|
|
440
549
|
glm::vec4(0.0f, 0.0f, 0.0f, 1.0f));
|
|
441
550
|
});
|
|
551
|
+
// The shown trace has finished unless this frame waits for its own; waiting on it either
|
|
552
|
+
// way makes its writes visible across queues.
|
|
553
|
+
const std::span<const Ticket> traced =
|
|
554
|
+
shown.traced.timeline != nullptr ? std::span(&shown.traced, 1) : std::span<const Ticket>();
|
|
555
|
+
return graph.Execute(context_->Main(), traced, target.semaphores);
|
|
442
556
|
}
|
|
443
557
|
|
|
444
558
|
std::string_view ViewUsage() {
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
|
|
13
13
|
#include <glm/vec2.hpp>
|
|
14
14
|
|
|
15
|
+
#include <array>
|
|
15
16
|
#include <chrono>
|
|
16
17
|
#include <cstdint>
|
|
17
18
|
#include <deque>
|
|
@@ -39,6 +40,9 @@ struct ViewerOptions {
|
|
|
39
40
|
bool validation = false;
|
|
40
41
|
/// Wait for the display's refresh; off by default, so frames show what they cost.
|
|
41
42
|
bool vsync = false;
|
|
43
|
+
/// Trace the viewport on the compute queue, apart from the UI, when the device has one: the
|
|
44
|
+
/// UI keeps its rate, showing the newest finished image, however long a trace takes.
|
|
45
|
+
bool asyncRender = true;
|
|
42
46
|
/// Where `RunView` saves the last frame drawn offscreen as a PNG; empty for nowhere.
|
|
43
47
|
std::filesystem::path screenshot;
|
|
44
48
|
ShellOptions shell;
|
|
@@ -60,6 +64,9 @@ class Viewer {
|
|
|
60
64
|
|
|
61
65
|
/// @brief Draws frames until the window closes, the user quits or the frame count is reached.
|
|
62
66
|
void Run();
|
|
67
|
+
/// @brief Draws `count` more frames, whatever the frame count, or fewer once the window
|
|
68
|
+
/// closes or the user quits.
|
|
69
|
+
void RunFrames(std::uint64_t count);
|
|
63
70
|
|
|
64
71
|
std::uint64_t Frames() const {
|
|
65
72
|
return frames_;
|
|
@@ -68,6 +75,15 @@ class Viewer {
|
|
|
68
75
|
bool EcoPaused() const {
|
|
69
76
|
return ecoPaused_;
|
|
70
77
|
}
|
|
78
|
+
/// @return Whether the viewport is traced on the compute queue, apart from the UI.
|
|
79
|
+
bool AsyncRender() const {
|
|
80
|
+
return async_;
|
|
81
|
+
}
|
|
82
|
+
/// @return Whether the last frame's trace submitted commands recorded for an earlier frame
|
|
83
|
+
/// again, as it does while only the camera's pose and device columns change.
|
|
84
|
+
bool Replayed() const {
|
|
85
|
+
return deviceScene_->Replayed();
|
|
86
|
+
}
|
|
71
87
|
Shell& GetShell() {
|
|
72
88
|
return *shell_;
|
|
73
89
|
}
|
|
@@ -108,12 +124,21 @@ class Viewer {
|
|
|
108
124
|
void RecordFrame(const Ticket& drawn);
|
|
109
125
|
/// @brief Ends the recording, encoding its frames into video when asked.
|
|
110
126
|
void FinishSequence();
|
|
111
|
-
/// @brief
|
|
112
|
-
///
|
|
113
|
-
///
|
|
114
|
-
|
|
115
|
-
/// @
|
|
116
|
-
|
|
127
|
+
/// @brief Uploads the orbit camera's pose, then traces into slot `index` through the device
|
|
128
|
+
/// scene's steps, on its queue, after the UI frames that sampled the slot: replayed while
|
|
129
|
+
/// the scene, the origin and the view's size, lens and background stand, so only the pose
|
|
130
|
+
/// and device columns change.
|
|
131
|
+
/// @return The trace's ticket.
|
|
132
|
+
Ticket TraceViewport(std::size_t index);
|
|
133
|
+
/// @brief Picks the slot the UI shows this frame, and the one it traces into, if any: the
|
|
134
|
+
/// newest finished trace's and the other, rendering apart from the UI; or the one traced
|
|
135
|
+
/// this frame, waited for, while captures need this frame's own image, before any trace
|
|
136
|
+
/// has finished, or without asynchronous rendering.
|
|
137
|
+
void ChooseSlots();
|
|
138
|
+
/// @brief Submits the UI over the target, sampling the shown slot, which it clears to the
|
|
139
|
+
/// theme's colour without ray queries.
|
|
140
|
+
/// @return The frame's ticket.
|
|
141
|
+
Ticket DrawUi(ImDrawData& data, const FrameTarget& target);
|
|
117
142
|
|
|
118
143
|
ViewerOptions options_;
|
|
119
144
|
Scene& scene_;
|
|
@@ -128,13 +153,45 @@ class Viewer {
|
|
|
128
153
|
/// The heap and pass tracing the viewport; null without ray queries.
|
|
129
154
|
std::unique_ptr<BindlessHeap> heap_;
|
|
130
155
|
std::unique_ptr<CameraPass> camera_;
|
|
131
|
-
/// The image the viewport is rendered into, the UI's texture of it, and its storage slot.
|
|
132
156
|
std::unique_ptr<Sampler> sampler_;
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
157
|
+
/// An image the viewport is rendered into, the UI's texture of it, its storage slot, each
|
|
158
|
+
/// pixel's prim slot, which picking reads, and the orbit camera's pose its trace reads, three
|
|
159
|
+
/// rows relative to the render origin, written from the host (null without ray queries).
|
|
160
|
+
struct ViewportSlot {
|
|
161
|
+
std::unique_ptr<DeviceImage> image;
|
|
162
|
+
ImTextureID texture = 0;
|
|
163
|
+
BindlessIndex storage;
|
|
164
|
+
std::unique_ptr<DeviceColumn> prims;
|
|
165
|
+
std::unique_ptr<Buffer> pose;
|
|
166
|
+
/// The last trace into it, and the last UI frame that sampled it.
|
|
167
|
+
Ticket traced;
|
|
168
|
+
Ticket sampled;
|
|
169
|
+
};
|
|
170
|
+
/// A pose's bytes: three rows of four floats.
|
|
171
|
+
static constexpr std::uint64_t kPoseBytes = 3 * sizeof(glm::vec4);
|
|
172
|
+
/// Traces take turns among the slots, each with a recorded frame of its own to replay: one
|
|
173
|
+
/// shown and up to two tracing, so the compute queue runs one trace after another.
|
|
174
|
+
static constexpr std::size_t kSlots = 3;
|
|
175
|
+
std::array<ViewportSlot, kSlots> slots_;
|
|
176
|
+
/// The slot the UI shows: the newest finished trace's, or this frame's when it waits for it.
|
|
177
|
+
std::size_t shown_ = 0;
|
|
178
|
+
/// Whether traces run on the compute queue, apart from the UI.
|
|
179
|
+
bool async_ = false;
|
|
180
|
+
/// The slots traces still run into, apart from the UI, oldest first.
|
|
181
|
+
std::deque<std::size_t> tracing_;
|
|
182
|
+
/// Whether the shown slot holds a finished trace, so the UI need not wait for one.
|
|
183
|
+
bool traced_ = false;
|
|
184
|
+
/// What this frame does, as `ShowViewport` decided it: the slot it traces into, if any.
|
|
185
|
+
std::optional<std::size_t> tracingNow_;
|
|
186
|
+
/// What the trace records besides the pose; a change, or new slots, records anew.
|
|
187
|
+
struct RecordedView {
|
|
188
|
+
glm::uvec2 size{0};
|
|
189
|
+
double fov = 0.0;
|
|
190
|
+
glm::vec3 background{0.0f};
|
|
191
|
+
bool operator==(const RecordedView&) const = default;
|
|
192
|
+
};
|
|
193
|
+
std::optional<RecordedView> recordedView_;
|
|
194
|
+
std::uint64_t recorded_ = 0;
|
|
138
195
|
/// What a frame renders from; eco mode counts the frames it stays the same.
|
|
139
196
|
struct ViewState {
|
|
140
197
|
std::uint64_t version = 0;
|