Adjustments to the buoyancy demo to make the code more easily reusable#263
Open
sbj42 wants to merge 2 commits intoschteppe:masterfrom
Open
Adjustments to the buoyancy demo to make the code more easily reusable#263sbj42 wants to merge 2 commits intoschteppe:masterfrom
sbj42 wants to merge 2 commits intoschteppe:masterfrom
Conversation
…hen computing the area of the submerged shape. The plane's position in this demo happens to be 0 so it worked fine, but using the planePosition variable may help avoid a hurdle for people who use this code as a template.
…he number of shapes in the body. This way, two bodies with equal mass and area but with different numbers of shapes will behave the same. Without this change, the forces were disproportionately larger for complex bodies (such as the four-rectangle body2 in the demo), causing them to settle higher in the water than simpler bodies would.
Closed
JCWardle
reviewed
Aug 7, 2017
| // Partially submerged | ||
| var width = aabb.upperBound[0] - aabb.lowerBound[0]; | ||
| var height = 0 - aabb.lowerBound[1]; | ||
| var height = planePosition[1] - aabb.lowerBound[1]; |
There was a problem hiding this comment.
I was caught by this issue as well when I was running my own implementation.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
I was using the buoyancy demo as a template for my own water simulation code, but I was tripped up on some simple edge cases that were not accounted for in the demo.
This pull request includes "fixes" for those edge cases, so that others might not get caught by them when copying this code. First, the submerged-area calculation hard-coded the water plane position (14728c0). Second, the forces were disproportionately calculated for bodies with different numbers of shapes (fc33f4d).