Java LibGDX是否将精灵设置为圆形?
我正在尝试将球图像绑定到LibGDX中的圆形 目前,我在render方法中有此代码Java LibGDX是否将精灵设置为圆形?,java,android,libgdx,Java,Android,Libgdx,我正在尝试将球图像绑定到LibGDX中的圆形 目前,我在render方法中有此代码 spriteBatch.begin(); backWorld.getBodies(backBodies); for(Body body : backBodies){ if(body.getUserData() instanceof Sprite){ Sprite sprite = (Sprite) body.getUserData();
spriteBatch.begin();
backWorld.getBodies(backBodies);
for(Body body : backBodies){
if(body.getUserData() instanceof Sprite){
Sprite sprite = (Sprite) body.getUserData();
sprite.setPosition(body.getPosition().x, body.getPosition().y);
sprite.setSize(1000, 1200);
sprite.draw(spriteBatch);
}
}
world.getBodies(tmpBodies);
for(Body bodyBall : tmpBodies){
if(bodyBall.getUserData() instanceof Sprite){
Sprite ballsprite = (Sprite) bodyBall.getUserData();
ballsprite.setPosition(bodyBall.getPosition().x, bodyBall.getPosition().y);
ballsprite.draw(spriteBatch);
}
}
spriteBatch.end();
第一个循环是获取一个图像,并将其设置为背景中的一个世界,这样可以很好地显示图像。但是当我包含第二个循环时,它应该做同样的事情,那就是在身体中循环,得到精灵,然后将它应用到身体上,它给出了一个nullpointerexeption
使用此代码将精灵发送到实体
ball.setUserData(ballSprite);
back.setUserData(backgroundSprite);
也许你超过了SpriteBatch的最大大小?哪一行你得到了nullpointerexeption?我在渲染方法的第二个循环中得到了异常。基本上,我认为它找不到应该在那里的球精灵,因为我对背景做了完全相同的操作,这很好。我可以尝试制作一个单独的雪碧一批只为球那么