我用libgdx制作简单的游戏 . 我想添加box2d物理引擎 . 我有三个精灵,其中一个是动画(动态bodie) . 其余的都是静态的 . 我不知道如何将其与box2d集成 . 有没有解决方案 . 我花了很多时间进行搜索,但一无所获 . 我的世界渲染类:

public WorldRenderer(GameWorld world) {

this.world = world;

this.camera = new OrthographicCamera(CAMERA_WIDTH, CAMERA_HEIGHT);

this.camera.position.set(CAMERA_WIDTH/2f, CAMERA_HEIGHT/2f, 0);

this.camera.update();

spriteBatch = new SpriteBatch();

loadTexture();

}

public void loadTexture() {

TextureAtlas atlas = new TextureAtlas(Gdx.files.internal("gfx/textures.atlas"));

int indexr = 1;

int indexl = 1;

monkeyLeft = atlas.findRegion("left");

monkeyRight = atlas.findRegion("right");

platformTex = atlas.findRegion("platform");

bananaTex = atlas.findRegion("banana");

TextureRegion[] walkRightFrames = new TextureRegion[2];

TextureRegion[] walkLeftFrames = new TextureRegion[2];

for(int i=0;i<2;i++){

walkLeftFrames[i] = atlas.findRegion("left", indexl++);

walkRightFrames[i] = atlas.findRegion("right", indexr++);

}

goLeft = new Animation(RFD, walkLeftFrames);

goRight = new Animation(RFD, walkRightFrames);

}

public void render(){

spriteBatch.begin();

drawPlatform();

drawMonkey();

drawBanana();

spriteBatch.end();

}

public void drawMonkey() {

Monkey monkey = world.getMonkey();

monkeyFrame = monkey.isFacingLeft() ? monkeyRight : monkeyLeft;

if(monkey.getState().equals(Stan.WALK)){

monkeyFrame = monkey.isFacingLeft()? goLeft.getKeyFrame(monkey.getStateTime(), true) : goRight.getKeyFrame(monkey.getStateTime(), true);

}

spriteBatch.draw(monkeyFrame, monkey.getPosition().x*ppuX, monkey.getPosition().y*ppuY, Monkey.SIZE*ppuX, Monkey.SIZE*ppuY);

}

public void drawPlatform() {

for(Platform platform : world.getPlatforms()){

spriteBatch.draw(platformTex, platform.getPosition().x*ppuX, platform.getPosition().y*ppuY, Platform.SIZE*ppuX, Platform.SIZEH*ppuY);

}

}

public void drawBanana() {

Banana banana = world.getBanana();

spriteBatch.draw(bananaTex, banana.getPosition().x*ppuX, banana.getPosition().y*ppuY, Banana.SIZE*ppuX, Banana.SIZE*ppuY);

}

box2d for java_用box2d制作动画相关推荐

  1. 《Python数据可视化编程实战》——5.5 用OpenGL制作动画

    本节书摘来异步社区<Python数据可视化编程实战>一书中的第5章,第5.5节,作者:[爱尔兰]Igor Milovanović,更多章节内容可以访问云栖社区"异步社区" ...

  2. html与css结合动效案例,CSS3制作动画效果例子

    实现网站的图片.文字的动态效果,我们有photoshop制作多帧动画GIF.用flash制作更精巧的动画,还有利用javascript通过识别ID/CLASS 来实现对应DIV块的动画效果.然而,即使 ...

  3. 【转】MATLAB如何制作动画(动态图形演示movie)

    https://jingyan.baidu.com/article/49711c6199002dfa451b7c52.html MATLAB如何制作动画(动态图形演示movie) 听语音 | 浏览:7 ...

  4. Qt Creator制作动画

    Qt Creator制作动画 制作动画 创建时间表 将动画绑定到状态 管理关键帧 浏览时间轴 设置关键帧值 观看动画 编辑缓和曲线 将缓和曲线附加到关键帧 自定义缓和曲线 编辑动画曲线 旋转项目 制作 ...

  5. html5 制作风车,[网页设计]html5 requestAnimationFrame制作动画:旋转风车

    详细内容请点击 在以往,我们在网页上制作动画效果的时候,如果是用javascript实现,一般都是通过定时器和间隔来实现的,出现HTML5之后,我们还可以用CSS3 的transitions和anim ...

  6. 利用 CSS animation 和 CSS sprite 制作动画

    CSS3 大大强化了制作动画的能力,但是如果要做出图案比较复杂的动画,选择 GIF 依然是一个不错的选择.今天给大家介绍一个使用 CSS animation 配合雪碧图(CSS sprite)来制作动 ...

  7. Python+Matplotlib制作动画

    转载自:https://www.cnblogs.com/endlesscoding/p/10308111.html 看到一篇觉得非常不错的Python+Matplotlib制作动画的方法

  8. sketch制作Android动画,如何直接用Sketch制作动画|Sketch插件|

    原标题:如何直接用Sketch制作动画|Sketch插件| 本期的sketch插件来为大家讲解如何制作动画,看来看看马克笔设计留学的MUzi老师的教程吧! 安装 1.下载并解压 Anima Tooki ...

  9. qt制作一个画板_如何直接用Sketch制作动画|Sketch插件|

    本期的sketch插件来为大家讲解如何制作动画,看来看看马克笔设计留学的MUzi老师的教程吧! 安装 1.下载并解压 Anima Tookit.ziphttps://timeline.animaapp ...

最新文章

  1. python---websocket的使用
  2. Windows 终端神器 MobaXterm,免费版可以在公司环境下使用
  3. python写byte数组到文件_这可能是写过最详细的Python文件操作。网友:收藏备用(中篇)...
  4. Python pandas用法
  5. 单点登录技术解决方案介绍
  6. POJ - 1655 Balancing Act(树的重心)
  7. Introduction to Financial Management
  8. 前端学习(83):按显示进行分类
  9. 聚簇索引和非聚簇索引详解
  10. Python实例:通过字典某个关键字排序
  11. 算法的定义、特征及其算法设计的要求
  12. 三、漏洞编号为CVE-2017-7494的复现(永恒之蓝)(Linux)(Ubuntu16.04.4)
  13. onenote网页版如何打开链接弄到客户端
  14. School Regional Team Contest, Saratov, 2011-F. Spiders-求树直径
  15. 45度回合RPG网页游戏《烽烟OL》v1.3正式开源!
  16. Java编写一个公司员工类
  17. 程序员离职后跳槽到国企,每天主动加班到10点,结果试用期没过?
  18. CF35C Fire Again
  19. 教我学计算机,教你怎样学电脑
  20. 使用libreoffice将office文档(word、ppt、excel)转pdf,实现在线预览

热门文章

  1. Android 摄像头预览悬浮窗,可拖动,可显示在其他app上方
  2. 进程间通信(IPC)介绍
  3. 在德国找Werksudent(Hiwi,即学生工)攻略info(计算机专业)篇
  4. HTML5 Blob对象实现媒体播放功能
  5. 计算机会计表格应用知识,会计电算化知识之报表管理模块的应用
  6. 借助7Z.exe 实现RAR压缩包密码暴力破解 C语言实现
  7. 码农提高工作效率的几种方式
  8. Post获取数据的方法
  9. 2020年6月浙江省计算机二级C语言经验分享
  10. After Effects CS3