Make deformables Newton-only and limit differentiation to kinematics - #564
Draft
yuecideng wants to merge 3 commits into
Draft
Make deformables Newton-only and limit differentiation to kinematics#564yuecideng wants to merge 3 commits into
yuecideng wants to merge 3 commits into
Conversation
Replace Default soft and cloth buffers with DexSim typed Newton particle-set descriptors, batched state access, and render topology. BREAKING CHANGE: soft and cloth objects now require the Newton backend on CUDA, and Default-only deformable configuration fields are removed.
Rename DifferentiableEmbodiedEnv to DifferentiableEnv, require the Newton backend, and remove unsupported differentiable dynamics stepping APIs until that phase is designed.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
Summary
SoftObjectCfgandClothObjectCfginto DexSim 0.5SoftBodyDesc/ClothDescparticle-set descriptors.Scene.create_particle_set_batch()state access.DifferentiableEmbodiedEnvtoDifferentiableEnvand restrict it toNewtonPhysicsCfg(requires_grad=True).This intentionally removes the compatibility burden for the legacy Default deformable backend while EmbodiChain deformable usage is still limited and DexSim development is converging on Newton. The differentiable environment is likewise kept intentionally narrow while only analytic kinematics are supported.
No linked issue.
Breaking changes
xpbd,semi_implicit,vbd, ormjvbd.load_soft_object_from_cfg()/load_cloth_object_from_cfg()construction is no longer supported; callers must declare throughSimulationManagerbeforeprepare().DifferentiableEmbodiedEnvis removed without a compatibility alias; subclasses must migrate toDifferentiableEnv.DifferentiableEnvrejects the Default backend and requires a Newton gradient model._apply_action_kernel,_make_kinematic_step_fn, and_read_outputs; dynamics modes and solver control hooks are removed.Dependency and known boundary
This adaptation targets the upcoming DexSim 0.5 typed particle-set scene API; no dependency pin is changed in this PR.
The current DexSim clone path can materialize a different render vertex count for replicated file-backed soft bodies. EmbodiChain detects that mismatch during Spawn binding and raises an actionable error before the renderer reaches the native upload/crash path. The volume GPU test therefore uses one environment; multi-environment cloth remains covered.
Newton gradient configuration still resolves a semi-implicit solver for scene setup, but
DifferentiableEnvnever advances it. Differentiable dynamics remain explicitly out of scope.Type of change
Screenshots
Not applicable.
Validation
142 passed— focused deformable config, descriptor, facade, backend-parity, and visualization tests9 passed— real CUDA/Newton soft-body and cloth tests (--run-gpu)16 passed, 2 deselected— CPU differentiable-environment tests2 passed, 16 deselected— real CUDA/Newton Franka FK/autograd tests (--run-gpu)27 passed, 1 deselected— APG, trainer, and Newton planar regression tests18 passed— simulation-manager configuration tests7 passed— agent-context map tests8 passed— API documentation checker testsAPI docs are aligned: 1860/1860 exports documentedcompileall, header/future-import checks, andgit diff --checkChecklist
black .command to format the code base.python docs/scripts/check_api_docs.py).