Upcoming authoring changes for Unity Physics and Havok Physics for Unity

Hello everyone, with the release of ECS for Unity just right around the corner, we wanted to provide information about authoring changes between the pre-release (1.0.0-pre.65 and earlier) and the upcoming release versions (1.0.0 and later) of Unity Physics and Havok Physics for Unity. Specifically, in the upcoming releases, we will be moving the custom Unity Physics authoring components (PhysicsBody, PhysicsShape, PhysicsRenderEntity) into the package sample, as a first step towards consolidating our ECS workflows.

Why are we doing this?
In prior versions of Unity Physics (1.0.0-pre.65 and earlier), users are able to use custom Unity Physics authoring components (PhysicsBody, PhysicsShape), interchangeably with built-in Physics components (Rigibody, Colliders). As we work on consolidating our ECS workflows, we’re progressing toward a single workflow via the built-in Physics authoring components. This would ensure new and existing users of ECS for Unity can continue leveraging on their existing experience working with the built-in Physics authoring experience to create ambitious games.

That said, the underlying APIs driving the custom Unity Physics authoring components will still be available, and users can continue to refer and use them via the samples should they choose to. We intend to take some of the usability and design lessons from these custom Unity Physics authoring components and apply them to the built-in Physics authoring components moving forward.

Mitigating changes to your project
If you have used the custom Unity Physics authoring components with prior versions of Unity Physics (1.0.0-pre.65 and earlier) and prefer to continue using them, we’ve provided a convenient way for you to import these components into your projects with the next release. Here are the required steps:

In your open project, navigate to the Unity Physics package in the Package Manager.

Select the Samples tab, and then click the Import button next to the Custom Physics Authoring sample entry.


After successful import, the custom physics authoring scripts will appear in your project.

Sharing feedback
This forum is the best place to open discussions and ask questions.

  • If you encounter a bug, please use the Unity Bug Reporter in the Unity Editor, accessible via Help > Report a Bug. Include the name of the package (with version number) in the title to help our team triage things appropriately.
  • To learn more about what we are working on, you can refer to this post and our public roadmap where you can share feedback and submit ideas.
  • To participate in conversations with the community, you can visit the #dots-forum channel on our official Unity discord server.

Thank you again to everyone who has continued to take the time to share feedback. We look forward to hearing from you!

6 Likes

in Physics Shape Authoring we can adjust the following settings: Collision Filter (Collides with, Belongs to) and Custom tags. I use these intensively in my projects. Will they be available in built-in (legacy) physics components in some form, or we will have to use custom physics authoring?

5 Likes

I have same problem!

I was going to ask the same question. The authoring components have more and different settings. Additionally, the baking for the buildin joints was broken for me so I used the joint authoring components from the samples.

I read this as legacy physics components will no longer be supported, which sounded good.

With our 1.0 release, you could either implement your own custom authoring solution (since the underlying APIs for these components are still available) or leverage the custom Physics authoring components that we’re providing as part of the package samples. In the longer term, we’re looking to integrate more of such capabilities into the built-in Physics components to ensure a consolidated experience across all of our Physics offerings. Hope that helps!

5 Likes

@IsaacsUnity What about the lisence for Havok in Unity ? Any update on this ?

1 Like

Why is this a sample and not just a separate optional package?

Would you be asking about the general availability of Havok Physics for Unity? If so, the package continues to be exclusively available and included with Pro, Enterprise and Unity Industry users only. Let me know if this was helpful.

We wanted a one-click solution that was easily accessible and could effectively help a user re-import these custom authoring components easily. We did consider a package, but alas, it felt like it was adding complexity to the Unity Physics package, hence we opted to distribute it via the samples instead. Hope that helps!

3 Likes

Are there any plans to make the “constraints” checkboxes in the Rigidbody component get converted too, so we can easily create 2D-physics entities? Or alternatively you could make this workflow apply to Rigidbody2D and the corresponding colliders.

I feel like it’s hidden, which makes it difficult to access and reimport. I suggest, if you want to keep it in the samples tab, that you simply add a note in the description saying:
“DOTS Custom Physics Authoring Components [are deprecated (or whatever is happening with them)] in favor of the legacy physics components. The components can still be used, and can be imported from the samples tab”
…or something less wordy.

Having to get the user to delete the existing code and then re-import every version is not a good experience, along with having these random files in the project (Under a “samples” folder to add confusion). It’s a short term trade off that is going to hurt more as time goes on.

For those wanting a package I’ve created it on github/upm:

Why would a package with a dependency on another package impact the package it depends on?

1 Like

Is there no performance advantage to using the Unity Physics authoring components in the physics samples over the built in physics components at this point?

Why would there be a performance difference? Both authoring methods create the same Entities components once baked.

1 Like

I did not know this. Thank you

1 Like

I totally misunderstood what was going to happen. I don’t support this change.

1 Like

We included both the built-in physics authoring experience as well as the custom physics authoring experience in the Unity Physics package documentation under Authoring.

1 Like