Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

Resolved Future of custom Unity Physics authoring components

Discussion in 'DOTS Dev Blitz Day 2023 - Q&A' started by TheOtherMonarch, Aug 23, 2023.

  1. TheOtherMonarch

    TheOtherMonarch

    Joined:
    Jul 28, 2012
    Posts:
    791
    Custom Unity Physics authoring components have been being sidelined. Currently they offer the best authoring experience for Unity Physics. They expose more options, some of which are for very basic things like Force Unique and collision filters.


    I don’t understand why this decision was taken. Runtime data is always going to be coupled to authoring data and this decision makes basic stuff much harder or impossible. What is the plan for the authoring workflow? Are legacy components going to change? What benefit does having one set of components bring compared to a tailored solution?
     
    UniqueCode and Samsle like this.
  2. vertxxyz

    vertxxyz

    Joined:
    Oct 29, 2014
    Posts:
    99
    There are currently two things to maintain, after they're done bringing the built-in components to parity then there will be one.
    It will also be one that's familiar to new users and means there's easy compatibility with built-in, instead of having new totally different components.
    I think there's not much point being sad about it until the final authoring solution exists to discuss, because for once the previous solution wasn't just totally removed, we have it in the samples for those that need it!
     
  3. TheOtherMonarch

    TheOtherMonarch

    Joined:
    Jul 28, 2012
    Posts:
    791
    I don't believe they can ever reach parity and they never said they would. The issue is unless Unity Physics fundamentally changes the way it works it will remain a broken workflow when using Legacy components. Instead of wild speculation, I would like some clues on what is going to happen to address the issue of this broken workflow.
     
    Last edited: Aug 24, 2023
  4. vertxxyz

    vertxxyz

    Joined:
    Oct 29, 2014
    Posts:
    99
    You do not need to be aggressive to people who respond to you.

    upload_2023-8-24_9-50-21.png

    It's not wild speculation, it's what they have stated fairly repeatedly.

    upload_2023-8-24_9-52-14.png

    upload_2023-8-24_9-52-41.png

    upload_2023-8-24_9-54-38.png

    Feel free to search the Unity Discord for other such responses, which iirc were also covered in the previous DOTS dev days.
     
    Samsle likes this.
  5. TheOtherMonarch

    TheOtherMonarch

    Joined:
    Jul 28, 2012
    Posts:
    791
    Thank you for providing those sources. I only know what I read on this forum. Not what is on reddit or discord. They do seem to take a stronger stand on reddit and discord. However, the issue of this strategy being nonviable, in my opinion, still exists.

    I think this change was a marketing decision and not one based on reality. Because of the difference in data requirements between Unity Physics and PhysX I do not believe parity will ever happen. The reality is that the runtime and editor representations are intrinsically, and fundamentals coupled in ways that make this kind of abstraction unreasonable. Cluttering up a single component with options increases complexity and looks amateurish. I doubt Unity will create a workflow with that many superfluous options. As it stands the legacy components simply are not viable. However, I think we are likely to be stuck with them for a long time to come.
     
    Last edited: Aug 24, 2023
  6. jivalenzuela

    jivalenzuela

    Unity Technologies

    Joined:
    Dec 4, 2019
    Posts:
    67
    As a rule we tried to avoid releasing anything in 1.0 that we knew we'd have to deprecate in the future, and we knew that as we sought to flesh out the parity between Unity Physics and other physics systems, we'd have to change the custom components. This had the very real potential to break authored data in customer projects, which is a non-starter.

    I don't think runtime and authoring representations are or need to be as tightly coupled as you suggest. I have plenty of experience where not only is the runtime data significantly different than the authoring data, but they aren't even 1-1.

    That said, you're right that the current situation isn't ideal and yes there are rough spots in the workflow. We're working to improve that as we go along. In the meantime if you really need the custom components they are available (albeit in the same unsupported manner as before).
     
  7. TheOtherMonarch

    TheOtherMonarch

    Joined:
    Jul 28, 2012
    Posts:
    791
    I am ok with baking, and you are right not everything has to be 1 to 1. I don’t care too much about what the baked component date ends up being if it auto bakes. I do have some reservations about complex baking scenarios. It puts a heavy burden on the programmer. It is much cheaper monetarily and more flexible having a level designer set stuff up compared to a programmer setting up baking. I think that it is probably worth it given the potential performance benefits and ease of setting up authoring for artists.

    The legacy components were designed with 1 to 1 in mind. Unity Physics is also mostly 1 to 1 except for the compound colliders which often create huge issues because of their loose coupling compared to WYSIWYG. When you are trying to set a collision filter in most cases you just want the data to be baked into a single component date. In other words, the runtime data is very tightly coupled to the authoring data.

    This is possibly the opposite of what you were saying. But if you decide to have extra authoring components and bake multiple authoring components into 1 run time component, I am ok with it. Even if I think it is a sign that PhysX and MonoBehaviour considerations are negatively affecting the design of the authoring components.
     
    Last edited: Aug 25, 2023