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

Improve collision with non-ship blocks. #9

Open
orbea opened this issue Nov 2, 2017 · 7 comments
Open

Improve collision with non-ship blocks. #9

orbea opened this issue Nov 2, 2017 · 7 comments
Labels

Comments

@orbea
Copy link
Contributor

orbea commented Nov 2, 2017

Ships tend to phase through non-ship blocks an objects. This leads to issues with replacing other blocks and objects other than the pilot getting stuck inside a ship block. It would be better if colliding with a block brought the ship to to a full stop where the pilot would have to reverse and maneuver around. See this screenshot for an example, a single cobblestone is taken up by a ship block.

1

@orbea
Copy link
Contributor Author

orbea commented Nov 3, 2017

The problem is essentially that the collision box of the moving ship is reduced to that of the player's size and not that of the ship.

@midnightpizza
Copy link

It would reduce the ammount of grief possible, making a huge barge and just clip into objects, setting it to actual blocks, and back, nom i just have eaten a chunk out of this.. whatever i clipped trough.

@stujones11
Copy link
Owner

stujones11 commented Nov 4, 2017

This is a difficult problem to fix since collision detection is currently not possible for attached entities. However, in the current development MT builds it is now possible to change the player collision box size without effecting the selection box so in future it may be possible to increase that to the extents of the model. There will, of course, still be issues with axis-alignment as the model rotates.

@orbea
Copy link
Contributor Author

orbea commented Nov 4, 2017

That is understandable, do you know of any preexisting issues for the engine that would allow you to implement this properly if resolved?

@stujones11
Copy link
Owner

I am not aware of any pre-existing issues and they'd likely be tagged as 'upstream' if there were since much of the limitation is down to Irrlicht itself. Non-axis aligned collisions may be technically possible but would require a lot of changes.

@orbea
Copy link
Contributor Author

orbea commented Nov 4, 2017

There was a similar mod for minecraft which "solved" this by not allow the ships to turn. This could work for the mean time, perhaps a configuration setting?

@stujones11
Copy link
Owner

stujones11 commented Nov 4, 2017

I would be fine with a configuration setting to disable turning, however, this would only be effective with the extended player collision-box, unfortunately an in-dev feature.

Edit: Actually I am talking nonsense, the player collision-box is ignored because the player is attached to the controller entity. It is that which requires the extended collision-box, though still only available in-dev without making it's selection-box massive too.

Another obvious limitation is that entity collision-boxes are only one single aabb box, unlike nodes that can be described by many (nodeboxes). This means there will be lot of 'false-positives' if much of the area is composed of 'air'.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

3 participants