| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
This is a major addition to the library, encapsulating patters that emerged from building many interactive tool prototypes over emerging AI and 3D research. The goal of this module is to support very flexible research use cases that require combinging interaction with new AI and 3D tools. The overall approach is a Web based client-server application. Newly added kaolin.visualize.dash is a toolkit for building interactive 3D/2D web applications with rich client-server communication on top of Plotly Dash. It is designed for PyTorch workflows where heavy work (rendering, inference, optimization) runs server-side while the browser handles interactive mouse / touch / keyboard input and lightweight client-side logic. At the same time, custom client-side javascript and javascript library integration is also supported, allowing mixed client/server designs. This change includes extensive python API for configuring such applications, and I/O logic for encoding workloads from/to python and javascript. Extensive javascript API is also included and will be available under window.kaolin in the live app. Signed-off-by: Masha Shugrina <mshugrina@nvidia.com> | 2 个月前 | |
Add tutorial, fix doc and readme for v0.12.0 (#604) * move introduction / explanation for spc to tutorials section Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> * add new tutorial, and update readme Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> * change version.txt Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> | 4 年前 | |
fix all notebooks + CI fix + resolve warning on simplicits (#989) * fix all notebooks + CI fix + resolve warning on simplicits Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> * update pytorch on docs/readthedocs_requirements.txt Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> --------- Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> | 3 个月前 | |
Make USD and OBJ importers consistent for all properties, change handling of material assignments, fix bugs, add option to triangulate. (#724) Non-backward compatible changes to OBJ importer, including: - renamed vertex_normals to normals and fixed doc (this value is normals array is not num_verts x 3, but num_normals x 3) - renamed face_normals to face_normals_idx, which is more accurate - changed material_order to material_assignments tensor with material_id per face - materials are now returned in alphabetical order - fixed handling of materials for non-homogeneous meshes - fixed skip handling of non-homogeneous meshes Other changes to OBJ importer: - added option to triangulate - added handler to fill in missing materials - added material_name to materials Non-backward compatible changes to USD importer, including: - changes material_order to material_assignments tensor with material_id per face (this is original USD repersentation) - materials are now returned in alphabetical order - removed deprecated handlers in kaolin.io.usd Other changes to USD importer: - major refactoring of the USD importer code; multiple bug fixes; more robust tests - added material_name to materials - added option to triangulate - fixed a bug in USD importer handling of uvs in non-homogeneous meshes Other changes: - deprecated heterogeneous_mesh_handler_naive_homogenize, renaming it mesh_handler_naive_triangulate (as it is not specific to heterogeneous mesh handling) - material assignments are now properly handled during triangulation - modified and simplified notebooks, given changes to API - added multi-object multi-material test file: amsterdam.obj, amsterdam.usd - modified notebooks and recipes to be more robust to missing data (e.g. shapenet) and to run both locally and on CI - added IO consistency checks for OBJ/USD for the new amsterdam mesh - removed heterogeneous_mesh_handler_empty, as we will no longer be able to support it with Mesh API Signed-off-by: Maria Masha Shugrina <mshugrina@nvidia.com> Co-authored-by: Maria Masha Shugrina <mshugrina@nvidia.com> | 3 年前 | |
fix all notebooks + CI fix + resolve warning on simplicits (#989) * fix all notebooks + CI fix + resolve warning on simplicits Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> * update pytorch on docs/readthedocs_requirements.txt Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> --------- Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> | 3 个月前 | |
fix all notebooks + CI fix + resolve warning on simplicits (#989) * fix all notebooks + CI fix + resolve warning on simplicits Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> * update pytorch on docs/readthedocs_requirements.txt Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> --------- Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> | 3 个月前 | |
- Added kaolin.render.easy_render, with a standard partial PBR shader for easy mesh rendering: (#800) - kaolin.render.easy_render.render_mesh supporting unbatched mesh rendering with materials and SG lighting, using either nvdiffrast or bundled cuda backend, with consistent results. - support multiple render passes - appears robust (tested on in-the-wild gltf models from sketchfab) - to the extent possible, given wildly different specs, consistent rendering from gltf, obj, usd imports - Refactored kaolin.io.materials.PBRMaterial and moved format-independent representation to kaolin.render.materials.PBRMaterial - Implemented import changes (some NOT backward-compatible), to ensure consistent imports for usd, obj, gltf - obj: uvs[...,1] is now set to 1 - uvs[..., 1], same as gltf - obj: expanded set of supported material attributes - obj: added option to convert materials to PBRMaterial on import (raw_materials=False) - usd: uvs[...,1] is now set to 1 - uvs[..., 1], same as gltf - usd: completely reworked material import/export; see kaolin/io/usd/materials.py - usd: major changes to fix silent texture/material overwriting on export (now this option is configurable) - usd: minor changes to import of some USDPreviewSurface maps, with TODO left to select imported channel - usd: texture image loading 10x faster - gltf: fixed normals import in gltf reader (previously not imported) - common: implemented kaolin.io.import_mesh that selects importer based on format - Implemented SurfaceMesh improvements: - flatten: method to flatten list of any batched meshes into one mesh, respecting materials - vertex_colors/face_colors: added support, with auto_compute - vertex_features/face_features: added support, with auto-compute - face_tangents: added support, with auto-compute - utility function to average features (not just normals) across faces of a mesh - extend support of converters like `cuda()` and `to()` to materials of type PBRMaterial - Lighting interface: - added SgLightingParameters for easy Spherical Gaussian parameter handling - Misc: - Consolidated nvdiffrast context handling in a separate file - Added minor utility functions throughout - Tutorial Notebooks: - Reworked interactive_visualizer, gltf_viz notebooks to use easy_render.render_mesh - Added visualization example to working_with_meshes - Adde easy_mesh_render notebook showing new render function - Fixed other notebooks in light of new uvmap conventions - Tests: - extensive tests of all new functionality - moved i/o regression tests for multi-format meshes to more appropriate location (kaolin/io/test_mesh.py) - added extra tests ensuring consistent loading across 3d formats - added avocado and armchair with consistent import from obj, usd, gltf - added consistency/regression tests for the new render function Signed-off-by: Maria Masha Shugrina <mshugrina@nvidia.com> Co-authored-by: Maria Masha Shugrina <mshugrina@nvidia.com> | 2 年前 | |
- Added kaolin.render.easy_render, with a standard partial PBR shader for easy mesh rendering: (#800) - kaolin.render.easy_render.render_mesh supporting unbatched mesh rendering with materials and SG lighting, using either nvdiffrast or bundled cuda backend, with consistent results. - support multiple render passes - appears robust (tested on in-the-wild gltf models from sketchfab) - to the extent possible, given wildly different specs, consistent rendering from gltf, obj, usd imports - Refactored kaolin.io.materials.PBRMaterial and moved format-independent representation to kaolin.render.materials.PBRMaterial - Implemented import changes (some NOT backward-compatible), to ensure consistent imports for usd, obj, gltf - obj: uvs[...,1] is now set to 1 - uvs[..., 1], same as gltf - obj: expanded set of supported material attributes - obj: added option to convert materials to PBRMaterial on import (raw_materials=False) - usd: uvs[...,1] is now set to 1 - uvs[..., 1], same as gltf - usd: completely reworked material import/export; see kaolin/io/usd/materials.py - usd: major changes to fix silent texture/material overwriting on export (now this option is configurable) - usd: minor changes to import of some USDPreviewSurface maps, with TODO left to select imported channel - usd: texture image loading 10x faster - gltf: fixed normals import in gltf reader (previously not imported) - common: implemented kaolin.io.import_mesh that selects importer based on format - Implemented SurfaceMesh improvements: - flatten: method to flatten list of any batched meshes into one mesh, respecting materials - vertex_colors/face_colors: added support, with auto_compute - vertex_features/face_features: added support, with auto-compute - face_tangents: added support, with auto-compute - utility function to average features (not just normals) across faces of a mesh - extend support of converters like `cuda()` and `to()` to materials of type PBRMaterial - Lighting interface: - added SgLightingParameters for easy Spherical Gaussian parameter handling - Misc: - Consolidated nvdiffrast context handling in a separate file - Added minor utility functions throughout - Tutorial Notebooks: - Reworked interactive_visualizer, gltf_viz notebooks to use easy_render.render_mesh - Added visualization example to working_with_meshes - Adde easy_mesh_render notebook showing new render function - Fixed other notebooks in light of new uvmap conventions - Tests: - extensive tests of all new functionality - moved i/o regression tests for multi-format meshes to more appropriate location (kaolin/io/test_mesh.py) - added extra tests ensuring consistent loading across 3d formats - added avocado and armchair with consistent import from obj, usd, gltf - added consistency/regression tests for the new render function Signed-off-by: Maria Masha Shugrina <mshugrina@nvidia.com> Co-authored-by: Maria Masha Shugrina <mshugrina@nvidia.com> | 2 年前 | |
Small improvements to documentation; improved access to tutorials. (#534) Streamlined installation instructions; other small fixes. Small fixes Signed-off-by: Maria Masha Shugrina <mshugrina@nvidia.com> Fixed doc build issue Signed-off-by: Maria Masha Shugrina <mshugrina@nvidia.com> Fixed PR comments; fixed rtd theme version; added link for DIB-R example to tutorial notebook. Signed-off-by: Maria Masha Shugrina <mshugrina@nvidia.com> Co-authored-by: Maria Masha Shugrina <mshugrina@nvidia.com> | 4 年前 | |
Bunch of fixes (#826) * Bunch of fixes Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> * update master to main for pytorch ref Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> --------- Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> | 2 年前 | |
- Added kaolin.render.easy_render, with a standard partial PBR shader for easy mesh rendering: (#800) - kaolin.render.easy_render.render_mesh supporting unbatched mesh rendering with materials and SG lighting, using either nvdiffrast or bundled cuda backend, with consistent results. - support multiple render passes - appears robust (tested on in-the-wild gltf models from sketchfab) - to the extent possible, given wildly different specs, consistent rendering from gltf, obj, usd imports - Refactored kaolin.io.materials.PBRMaterial and moved format-independent representation to kaolin.render.materials.PBRMaterial - Implemented import changes (some NOT backward-compatible), to ensure consistent imports for usd, obj, gltf - obj: uvs[...,1] is now set to 1 - uvs[..., 1], same as gltf - obj: expanded set of supported material attributes - obj: added option to convert materials to PBRMaterial on import (raw_materials=False) - usd: uvs[...,1] is now set to 1 - uvs[..., 1], same as gltf - usd: completely reworked material import/export; see kaolin/io/usd/materials.py - usd: major changes to fix silent texture/material overwriting on export (now this option is configurable) - usd: minor changes to import of some USDPreviewSurface maps, with TODO left to select imported channel - usd: texture image loading 10x faster - gltf: fixed normals import in gltf reader (previously not imported) - common: implemented kaolin.io.import_mesh that selects importer based on format - Implemented SurfaceMesh improvements: - flatten: method to flatten list of any batched meshes into one mesh, respecting materials - vertex_colors/face_colors: added support, with auto_compute - vertex_features/face_features: added support, with auto-compute - face_tangents: added support, with auto-compute - utility function to average features (not just normals) across faces of a mesh - extend support of converters like `cuda()` and `to()` to materials of type PBRMaterial - Lighting interface: - added SgLightingParameters for easy Spherical Gaussian parameter handling - Misc: - Consolidated nvdiffrast context handling in a separate file - Added minor utility functions throughout - Tutorial Notebooks: - Reworked interactive_visualizer, gltf_viz notebooks to use easy_render.render_mesh - Added visualization example to working_with_meshes - Adde easy_mesh_render notebook showing new render function - Fixed other notebooks in light of new uvmap conventions - Tests: - extensive tests of all new functionality - moved i/o regression tests for multi-format meshes to more appropriate location (kaolin/io/test_mesh.py) - added extra tests ensuring consistent loading across 3d formats - added avocado and armchair with consistent import from obj, usd, gltf - added consistency/regression tests for the new render function Signed-off-by: Maria Masha Shugrina <mshugrina@nvidia.com> Co-authored-by: Maria Masha Shugrina <mshugrina@nvidia.com> | 2 年前 | |
introduce compression to the visualizers (#828) * introduce compression to update_canvas Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> --------- Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> | 2 年前 | |
Simplicits V0 (#806) * initial commit. not running/tested (#805) try to fix test import batch size change. addressing comments last updates minor fixes. rename quat_norm update _safe_division for more types more MR fixes optionally raise error when invalid skeleton of example. move to `math` directory remove quat import from ops init.py fix import paths for test Signed-off-by: Alex Zook <azook@nvidia.com> Signed-off-by: Vismay <vismaym@nvidia.com> * Add support for cpu wheels, extend support for pytorch and python, fix various CI / test issues. (#802) Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> Signed-off-by: Vismay <vismaym@nvidia.com> * Clement's patch code to put everything into a new bracnh from simplicits small docstring latex error trigger CI Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> Signed-off-by: Vismay <vismaym@nvidia.com> Updated docs updated docs for muscle and scene forces Signed-off-by: Vismay <vismaym@nvidia.com> --------- Signed-off-by: Alex Zook <azook@nvidia.com> Signed-off-by: Vismay <vismaym@nvidia.com> Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> Co-authored-by: Alex Zook <azook@nvidia.com> Co-authored-by: Caenorst <cfujitsang@nvidia.com> Co-authored-by: Vismay <vismaym@nvidia.com> | 2 年前 | |
fix all notebooks + CI fix + resolve warning on simplicits (#989) * fix all notebooks + CI fix + resolve warning on simplicits Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> * update pytorch on docs/readthedocs_requirements.txt Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> --------- Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> | 3 个月前 | |
fix quaternions tutorials and add to tests (#827) * added quaternion tutorial notebook. fixed quaternion recipe Signed-off-by: Alex Zook <azook@nvidia.com> * add tutorial reference and CI test Signed-off-by: Alex Zook <azook@nvidia.com> * typo Signed-off-by: Alex Zook <azook@nvidia.com> * fix missing catch Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> --------- Signed-off-by: Alex Zook <azook@nvidia.com> Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> Co-authored-by: Alex Zook <azook@nvidia.com> | 2 年前 | |
- Added kaolin.render.easy_render, with a standard partial PBR shader for easy mesh rendering: (#800) - kaolin.render.easy_render.render_mesh supporting unbatched mesh rendering with materials and SG lighting, using either nvdiffrast or bundled cuda backend, with consistent results. - support multiple render passes - appears robust (tested on in-the-wild gltf models from sketchfab) - to the extent possible, given wildly different specs, consistent rendering from gltf, obj, usd imports - Refactored kaolin.io.materials.PBRMaterial and moved format-independent representation to kaolin.render.materials.PBRMaterial - Implemented import changes (some NOT backward-compatible), to ensure consistent imports for usd, obj, gltf - obj: uvs[...,1] is now set to 1 - uvs[..., 1], same as gltf - obj: expanded set of supported material attributes - obj: added option to convert materials to PBRMaterial on import (raw_materials=False) - usd: uvs[...,1] is now set to 1 - uvs[..., 1], same as gltf - usd: completely reworked material import/export; see kaolin/io/usd/materials.py - usd: major changes to fix silent texture/material overwriting on export (now this option is configurable) - usd: minor changes to import of some USDPreviewSurface maps, with TODO left to select imported channel - usd: texture image loading 10x faster - gltf: fixed normals import in gltf reader (previously not imported) - common: implemented kaolin.io.import_mesh that selects importer based on format - Implemented SurfaceMesh improvements: - flatten: method to flatten list of any batched meshes into one mesh, respecting materials - vertex_colors/face_colors: added support, with auto_compute - vertex_features/face_features: added support, with auto-compute - face_tangents: added support, with auto-compute - utility function to average features (not just normals) across faces of a mesh - extend support of converters like `cuda()` and `to()` to materials of type PBRMaterial - Lighting interface: - added SgLightingParameters for easy Spherical Gaussian parameter handling - Misc: - Consolidated nvdiffrast context handling in a separate file - Added minor utility functions throughout - Tutorial Notebooks: - Reworked interactive_visualizer, gltf_viz notebooks to use easy_render.render_mesh - Added visualization example to working_with_meshes - Adde easy_mesh_render notebook showing new render function - Fixed other notebooks in light of new uvmap conventions - Tests: - extensive tests of all new functionality - moved i/o regression tests for multi-format meshes to more appropriate location (kaolin/io/test_mesh.py) - added extra tests ensuring consistent loading across 3d formats - added avocado and armchair with consistent import from obj, usd, gltf - added consistency/regression tests for the new render function Signed-off-by: Maria Masha Shugrina <mshugrina@nvidia.com> Co-authored-by: Maria Masha Shugrina <mshugrina@nvidia.com> | 2 年前 | |
Replace rays.py with full raygen functionality (#811) Fix issues with custom resolution pixel grid Fix camera raygen recipe MR fixes round 1 Fix broken test Fix broken test 2 Add raygen tests Fix docs Fix docs due to warning Signed-off-by: operel <operel@nvidia.com> Co-authored-by: operel <operel@nvidia.com> | 2 年前 | |
missing spc_formatting file (#507) Signed-off-by: operel <operel@nvidia.com> Co-authored-by: operel <operel@nvidia.com> | 4 年前 | |
test torch 2.0.1 (#741) Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> | 3 年前 | |
exsum redo for scan_octrees complete (#988) Signed-off-by: Charles Loop <cloop@nvidia.com> exsum redo for generate_points complete exsum redo for identify and raytrace complete exsum redo for convolutions exsum redo for spy.py and tests gitignore: ignore .devcontainer and Claude Code local files Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> spc: support both exsum layouts with deprecation warning The exsum redesign changed the exsum/prefix_sum layout from the legacy (num_bytes + batch_size) exclusive-sum-with-leading-zero to the current (num_bytes) inclusive sum. This adds backward compatibility so both layouts work, warning when the legacy layout is encountered. - New _exsum_compat.py: detects layout by length, converts legacy<->current, recovers per-octree byte counts from the pyramid (torch-only, no cycles). - scan_octrees(legacy_exsum=False): opt back into the legacy layout + warning. - Consumers auto-detect/convert at the Python boundary (C++ kernels untouched): generate_points, unbatched_query (spc + bf_recon), unbatched_raytrace, conv3d/conv_transpose3d, and the Spc rep class. - Fix ops/spc/test_spc.py test_scan_octrees expectations the redo missed (still encoded the old layout); add test_exsum_compat.py (11 tests). - Update docstrings + spc_summary.rst. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> spc: rename exsum_compat module off underscore prefix; update copyrights Keeps scan_octrees defaulting to the current exsum layout (legacy_exsum=False). Rolls back the prior legacy-default change. - Rename _exsum_compat.py -> exsum_compat.py (repo policy: no underscore-prefixed new files) and update all imports. - Update copyright headers: 2026 for new files, START_YEAR-2026 for modified. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> spc: rename render-side exclusive_sum identifier to inclusive_sum The octree scan tensor is now an inclusive sum (first element no longer 0), so the lingering internal C++ identifier exclusive_sum in the render raytrace path was mislabeling it. Rename to inclusive_sum (internal only; the function is bound positionally so no Python API change). The bool `exclusive` cumsum/ cumprod flag and cub::DeviceScan::ExclusiveSum are unrelated and left as-is. Prose descriptions of the tensor were already corrected to "inclusive sum"; legacy-layout descriptions correctly remain "exclusive". The public `exsum` name is unchanged here (planned insum rename is a separate follow-up). Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> test: drop unused unpacks in test_default_is_current_layout Use underscore placeholders for the unused level/pyramid returns of scan_octrees; only exsum is asserted on. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> docs: update SPC tutorial for the inclusive exsum convention - Rewrite the exsum explanation to describe the inclusive prefix-sum layout (exsum[i] = occupied child cells in bytes 0..i; node i's children span [exsum[i-1], exsum[i])), replacing the old "exclusive sum" wording. - Fix scan_octrees call that passed len(octrees) instead of len(octree). - Clear the affected cells' stale outputs and drop the stale ipywidgets state metadata that cached the old "exclusive sum" text; they regenerate on re-run. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> addded exsum_cat.py to kaolin_ext.py Co-authored-by: Charles Loop <cloop@nvidia.com> | 3 个月前 | |
Make USD and OBJ importers consistent for all properties, change handling of material assignments, fix bugs, add option to triangulate. (#724) Non-backward compatible changes to OBJ importer, including: - renamed vertex_normals to normals and fixed doc (this value is normals array is not num_verts x 3, but num_normals x 3) - renamed face_normals to face_normals_idx, which is more accurate - changed material_order to material_assignments tensor with material_id per face - materials are now returned in alphabetical order - fixed handling of materials for non-homogeneous meshes - fixed skip handling of non-homogeneous meshes Other changes to OBJ importer: - added option to triangulate - added handler to fill in missing materials - added material_name to materials Non-backward compatible changes to USD importer, including: - changes material_order to material_assignments tensor with material_id per face (this is original USD repersentation) - materials are now returned in alphabetical order - removed deprecated handlers in kaolin.io.usd Other changes to USD importer: - major refactoring of the USD importer code; multiple bug fixes; more robust tests - added material_name to materials - added option to triangulate - fixed a bug in USD importer handling of uvs in non-homogeneous meshes Other changes: - deprecated heterogeneous_mesh_handler_naive_homogenize, renaming it mesh_handler_naive_triangulate (as it is not specific to heterogeneous mesh handling) - material assignments are now properly handled during triangulation - modified and simplified notebooks, given changes to API - added multi-object multi-material test file: amsterdam.obj, amsterdam.usd - modified notebooks and recipes to be more robust to missing data (e.g. shapenet) and to run both locally and on CI - added IO consistency checks for OBJ/USD for the new amsterdam mesh - removed heterogeneous_mesh_handler_empty, as we will no longer be able to support it with Mesh API Signed-off-by: Maria Masha Shugrina <mshugrina@nvidia.com> Co-authored-by: Maria Masha Shugrina <mshugrina@nvidia.com> | 3 年前 | |
- Added kaolin.render.easy_render, with a standard partial PBR shader for easy mesh rendering: (#800) - kaolin.render.easy_render.render_mesh supporting unbatched mesh rendering with materials and SG lighting, using either nvdiffrast or bundled cuda backend, with consistent results. - support multiple render passes - appears robust (tested on in-the-wild gltf models from sketchfab) - to the extent possible, given wildly different specs, consistent rendering from gltf, obj, usd imports - Refactored kaolin.io.materials.PBRMaterial and moved format-independent representation to kaolin.render.materials.PBRMaterial - Implemented import changes (some NOT backward-compatible), to ensure consistent imports for usd, obj, gltf - obj: uvs[...,1] is now set to 1 - uvs[..., 1], same as gltf - obj: expanded set of supported material attributes - obj: added option to convert materials to PBRMaterial on import (raw_materials=False) - usd: uvs[...,1] is now set to 1 - uvs[..., 1], same as gltf - usd: completely reworked material import/export; see kaolin/io/usd/materials.py - usd: major changes to fix silent texture/material overwriting on export (now this option is configurable) - usd: minor changes to import of some USDPreviewSurface maps, with TODO left to select imported channel - usd: texture image loading 10x faster - gltf: fixed normals import in gltf reader (previously not imported) - common: implemented kaolin.io.import_mesh that selects importer based on format - Implemented SurfaceMesh improvements: - flatten: method to flatten list of any batched meshes into one mesh, respecting materials - vertex_colors/face_colors: added support, with auto_compute - vertex_features/face_features: added support, with auto-compute - face_tangents: added support, with auto-compute - utility function to average features (not just normals) across faces of a mesh - extend support of converters like `cuda()` and `to()` to materials of type PBRMaterial - Lighting interface: - added SgLightingParameters for easy Spherical Gaussian parameter handling - Misc: - Consolidated nvdiffrast context handling in a separate file - Added minor utility functions throughout - Tutorial Notebooks: - Reworked interactive_visualizer, gltf_viz notebooks to use easy_render.render_mesh - Added visualization example to working_with_meshes - Adde easy_mesh_render notebook showing new render function - Fixed other notebooks in light of new uvmap conventions - Tests: - extensive tests of all new functionality - moved i/o regression tests for multi-format meshes to more appropriate location (kaolin/io/test_mesh.py) - added extra tests ensuring consistent loading across 3d formats - added avocado and armchair with consistent import from obj, usd, gltf - added consistency/regression tests for the new render function Signed-off-by: Maria Masha Shugrina <mshugrina@nvidia.com> Co-authored-by: Maria Masha Shugrina <mshugrina@nvidia.com> | 2 年前 | |
fix all notebooks + CI fix + resolve warning on simplicits (#989) * fix all notebooks + CI fix + resolve warning on simplicits Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> * update pytorch on docs/readthedocs_requirements.txt Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> --------- Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> | 3 个月前 | |
make mesh / pointcloud usd importer consistent with gaussians (#981) Signed-off-by: Clement Fuji Tsang <cfujitsang@nvidia.com> | 4 个月前 |
| 文件 | 最后提交记录 | 最后更新时间 |
|---|---|---|
| 2 个月前 | ||
| 4 年前 | ||
| 3 个月前 | ||
| 3 年前 | ||
| 3 个月前 | ||
| 3 个月前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 4 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 3 个月前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 2 年前 | ||
| 4 年前 | ||
| 3 年前 | ||
| 3 个月前 | ||
| 3 年前 | ||
| 2 年前 | ||
| 3 个月前 | ||
| 4 个月前 |