Мне нужно знать, как я могу проверить в Farseer Physics, если игрок / пользователь нажимает на конкретное тело, возможно ли это?
Надо ли писать свои собственные методы?
Мне нужно знать, как я могу проверить в Farseer Physics, если игрок / пользователь нажимает на конкретное тело, возможно ли это?
Надо ли писать свои собственные методы?
Используйте Mouse.GetState()
и сравните состояние мыши в этом кадре с состоянием из предыдущего кадра (вы должны сохранить его), чтобы определить, когда и где происходят щелчки. Это должно быть тривиально, поэтому я не буду вдаваться в подробности (если вам это нужно, задайте дополнительный вопрос конкретно о XNA, а не о Farseer).
Как только вы укажете позицию мыши как Vector2
, передайте ее в World.TestFixture(Vector2 point)
, который вернет Fixture
. (Вы также можете использовать TestPointAll
, чтобы получить список приборов, если вы хотите, чтобы под курсором было несколько приборов).
Если вам нужен Body
, используйте свойство Fixture.Body
.