JBox2D висит на world.step () - PullRequest
1 голос
/ 08 марта 2012

Появилась серьезная ошибка, и я понятия не имею, почему. Вскоре после запуска игры игра зависает. Все, что я знаю, это то, что выполнение программы переходит в world.step(1.0f/30.0f, 5, 2); и никогда не завершается, тем самым замораживая игру (никогда, я имею в виду, никаких видимых изменений не произошло в течение более минуты, и для этого приложения это также может быть навсегда). Я работал над этим некоторое время, а раньше такого не было, но теперь это происходит каждый раз в течение нескольких секунд после запуска.

Кто-нибудь знает, почему это может произойти?

К сожалению, в подобном случае мне хотелось бы использовать контроль версий.

1 Ответ

1 голос
/ 10 марта 2012

Я нашел проблему.По какой-то причине именно этот метод (и другой похожий на него) вызвал проблему.

    public Vec2 getRWallCenter()
    {
        Vec2 v = rWall.getPosition();
        float scale = purpleRadius / 2;
        v.set(v.x * scale, v.y * scale);

        return v;
    }

Может ли быть так, что когда я пытался масштабировать v до экранных координат, я фактически модифицировал вектор стены?Возможно, я мог бы попытаться клонировать вектор.

...