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

Contact point refactor #71

Merged
merged 17 commits into from
Jan 5, 2022
Merged

Contact point refactor #71

merged 17 commits into from
Jan 5, 2022

Conversation

xissburg
Copy link
Owner

@xissburg xissburg commented Jan 4, 2022

Store contact points in the manifold component and remove edyn::contact_point as a component.

Contact constraints now handle multiple points per constraints, creating all the necessary rows in the preparation function.

Contact constraints are now edges in the entity graph like every other constraint.

Contact manifold and contact constraint are assigned to a single entity.

The advantages are that contact manifolds and contact points become easier to manage and to serialize, especially considering now the challenges associated with synchronizing a simulation across the network. The code which handled contact constraints as a special case is now gone.

Contact events are handled differently now since the EnTT on_construct/on_destroy signals cannot be used because contact points are not entities anymore. Instead, Edyn now offers contact signals.

@xissburg xissburg merged commit bfe4412 into master Jan 5, 2022
@xissburg xissburg deleted the contact-point-refactor branch January 5, 2022 00:14
xissburg added a commit that referenced this pull request Jan 26, 2022
…r PR #71 (Contact point refactor), contact constraints are also graph edges like every other constraints.
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

Successfully merging this pull request may close these issues.

1 participant