Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Question] How to add a RigidContactView into the scene? #110

Closed
2361098148 opened this issue Aug 21, 2023 · 3 comments
Closed

[Question] How to add a RigidContactView into the scene? #110

2361098148 opened this issue Aug 21, 2023 · 3 comments

Comments

@2361098148
Copy link

Question

I find that the RigidContactView.initialize could not add the RigidContactView to the scene, which caused the simulation breakdown. What should I do to implement the scene.add(RigidContactView) function. It seems that there is no scene created directly

@2361098148
Copy link
Author

The same problem could be seen:link
link

@noibar
Copy link

noibar commented Aug 29, 2023

I had the same problem. I was able to solve it so I hope this would help:
In order to initialize RigidPrimView with track_contact_forces=True and the contact sensors to work without causing errors, you have to make sure that your initialization process contains all of the necessary steps in the right order.
You can see the expected order in this example and in the implementation of the World class.

The initialization flow should be:

  1. Create your views: ArticulationView, RigidPrimView
  2. simulation_context.reset(soft=False)
  3. Initialize articulations and rigid prim views with .initialize()

If you are working with SimulationContext (like in orbit examples) without a World object, you have to call view.initialize() directly, but you have to do it only after sim.reset() is called.
(In the rigid_contact_view.py example, the scene.add() registers the contact view and causes the view initialize() to be called later)

@2361098148
Copy link
Author

Thanks a lot!!! That works.

Mayankm96 added a commit that referenced this issue Oct 4, 2023
# Description

This MR introduces wrappers around different [USD
Physics](https://openusd.org/dev/api/usd_physics_page_front.html) and
[PhysX
solver](https://docs.omniverse.nvidia.com/kit/docs/omni_usd_schema_physics/104.2/index.html)
schemas. The functions allow modifying the properties on an asset prim
using configuration objects.

The schemas supersede the current `omni.isaac.orbit.utils.kit.py` which
did the same job but had duplication in the implementations.

## Type of change

- New feature (non-breaking change which adds functionality)
- This change requires a documentation update

## Checklist

- [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
`./orbit.sh --format`
- [x] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] I have updated the changelog and the corresponding version in the
extension's `config/extension.toml` file

---------

Signed-off-by: Mayank Mittal <12863862+Mayankm96@users.noreply.github.com>
Mayankm96 added a commit that referenced this issue Oct 4, 2023
# Description

This is a follow-up to PR #110. It adds additional methods that allow
defining i.e. creating the schemas at the specified prim path. This is
useful when creating your own meshes or prims procedurally. The methods
also check if there are any conflicting schemas on the prim to which we
want to apply a new schema. This makes sure that schemas are defined on
a prim gracefully.

## Type of change

- New feature (non-breaking change which adds functionality)
- This change requires a documentation update

## Checklist

- [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
`./orbit.sh --format`
- [x] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] I have updated the changelog and the corresponding version in the
extension's `config/extension.toml` file
Mayankm96 added a commit that referenced this issue Dec 22, 2023
# Description

This MR introduces wrappers around different [USD
Physics](https://openusd.org/dev/api/usd_physics_page_front.html) and
[PhysX
solver](https://docs.omniverse.nvidia.com/kit/docs/omni_usd_schema_physics/104.2/index.html)
schemas. The functions allow modifying the properties on an asset prim
using configuration objects.

The schemas supersede the current `omni.isaac.orbit.utils.kit.py` which
did the same job but had duplication in the implementations.

## Type of change

- New feature (non-breaking change which adds functionality)
- This change requires a documentation update

## Checklist

- [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
`./orbit.sh --format`
- [x] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] I have updated the changelog and the corresponding version in the
extension's `config/extension.toml` file

---------

Signed-off-by: Mayank Mittal <12863862+Mayankm96@users.noreply.github.com>
Mayankm96 added a commit that referenced this issue Dec 22, 2023
# Description

This is a follow-up to PR #110. It adds additional methods that allow
defining i.e. creating the schemas at the specified prim path. This is
useful when creating your own meshes or prims procedurally. The methods
also check if there are any conflicting schemas on the prim to which we
want to apply a new schema. This makes sure that schemas are defined on
a prim gracefully.

## Type of change

- New feature (non-breaking change which adds functionality)
- This change requires a documentation update

## Checklist

- [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
`./orbit.sh --format`
- [x] I have made corresponding changes to the documentation
- [x] My changes generate no new warnings
- [x] I have added tests that prove my fix is effective or that my
feature works
- [x] I have updated the changelog and the corresponding version in the
extension's `config/extension.toml` file
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants