-
Notifications
You must be signed in to change notification settings - Fork 10
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
Change capsules and cylinders to have separate top and bottom radiuses #234
base: main
Are you sure you want to change the base?
Change capsules and cylinders to have separate top and bottom radiuses #234
Conversation
b7578b8
to
60832d4
Compare
ec0c4db
to
32ec46d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
with #238 now merged, I took a look at this PR diffs carefully.
I notice that radius is still its own property which I hoped for.
As you mention its not common to have tapered cylinders/capsules in a lot of game engines for the moment, but it seems like that could change in the future. If a property is not given it has a default from the schema, if its not needed, its discarded. It's not an obstacle then.
I have no way to test this right now as you said, but I can say with my experience using extensions - this is theoretically sound, and should work, and it does not interfere with any current implementations. So I can only approve.
32ec46d
to
fc20b38
Compare
It's not, radius now only exists for spheres. |
Ah yes, I didn't mean to say radius, I meant to say height, which is the more common way to do capsules and cylinders. I meant that I hoped that there is still a height property and it's not removed. So we can still use height properly. Thanks again |
Of course, you can't make a capsule or cylinder without height. But the height is mid-height now for capsules. |
This PR changes the OMI_physics_shape definition of a capsule and cylinder to have
radiusBottom
andradiusTop
properties, which matches the KHR_collision_shapes extension. This PR also changes the capsule's height property to refer to the mid height instead of the full height, which also matches KHR_collision_shapes.https://github.com/eoineoineoin/glTF_Physics/blob/master/extensions/2.0/Khronos/KHR_collision_shapes/schema/glTF.KHR_collision_shapes.shape.capsule.schema.json
https://github.com/eoineoineoin/glTF_Physics/blob/master/extensions/2.0/Khronos/KHR_collision_shapes/schema/glTF.KHR_collision_shapes.shape.cylinder.schema.json
I was initially against this since it seemed that no game engine or physics engine supported it, but Jolt added support for both of these things recently, and they are going to be added to Godot Engine soon. Still, these will have to be approximated using convex hulls when being imported into Unity, Unreal Engine, and more.