如何使用libgdx 土豆编写一个简单的游戏

58被浏览19,123分享邀请回答712 条评论分享收藏感谢收起52 条评论分享收藏感谢收起博客专栏 - libgdx 游戏开发
libgdx 游戏开发
从了解认识 libgdx,到使用它进行游戏开发。
最近更新文章
原文地址:https://code.google.com/p/libgdx/wiki/ApplicationQuerying
引用本文请注明来源:http://yhz61010.iteye.com/blog/1942881
查询
  Application 接口提供了很多在用于查询运行环境的方法。
取得程序所运行的平台
  在一些需要根据不同的平台进行特殊处理的情况,可以对程序所运行的平台进行查询。 ...
英文原文地址:https://code.google.com/p/libgdx/wiki/ApplicationLogging
引用本文请注明来源:http://yhz61010.iteye.com/blog/1942866
  Application 接口提供了一些简单的 Log 工具。可以像下面这样输出 Log:
Gdx.app.log(&MyTag&, &my i ...
英文原文地址:https://code.google.com/p/libgdx/wiki/InputGestureDetection
引用本文请注明来源:http://yhz61010.iteye.com/blog/1941416
  Libgdx 提供了 GestureDetector 用于检测手势动作,可以检测的手势如下:
tap:用户在指定区域内在屏幕上进行了点击操作后手指又在该区域内离开了屏 ...
英文原文地址:https://code.google.com/p/libgdx/wiki/Application
引用本文请注明来源:http://yhz61010.iteye.com/blog/1939613
什么是 Back-ends
  Libgdx 将不同平台的差异进行了抽象,将它们抽象成一个接口集。对于每一个 libgdx 支持的平台,我们统一将它叫做 back-end,因为它们都实现了这 ...
引用本文请注明来源:http://yhz61010.iteye.com/blog/1939144
什么是 libgdx
它是一个免费的游戏开发框架。强调一下,libgdx 不是一个游戏引擎(engine),而一个开 ...
相关知识库
39174关注/3162收录
3998关注/393收录
18469关注/212收录
38499关注/3748收录《libGDX移动游戏开发从入门到精通》一1.1 libGDX介绍
本节书摘来异步社区《libGDX移动游戏开发从入门到精通》一书中的第1章,第1.1节,作者: 黄俊东 责编: 陈冀康,更多章节内容可以访问云栖社区“异步社区”公众号查看。
1.1 libGDX介绍
在本节中,主要简单介绍一下libGDX这个游戏引擎,包括其特点、配套的开发工具等,让读者对libGDX这个游戏引擎有一个的感性的认识。
本节书摘来异步社区《libGDX移动游戏开发从入门到精通》一书中的第1章,第1.1节,作者: 黄俊东 责编: 陈冀康,更多章节内容可以访问云栖社区“异步社区”公众号查看。
1.1 libGDX介绍
在本节中,主要简单介绍一下libGDX这个游戏引擎,包括其特点、配套的开发工具等,让读者对libGDX这个游戏引擎有一个的感性的认识。
1.1.1 libGDX的特点
libGDX是一个跨平台的2D/3D游戏开发框架,它由Java/C/C++语言编写而成。它基于Apache LicenseVersion 2.0协议,对商业使用和非商业使用均免费,代码托管于Github中,最新版本为1.5.4。开源的游戏框架并不少见,但是libGDX的优势是相当明显的,主要是体现在以下几个方面:
1.强兼容性libGDX兼容多种平台系统(Windows、Linux、Max OS X、Java Applet、Javascript/WebGL),包括移动系统Android(1.5版本+)和iOS。在Android阵营和相关市场日益扩大的情况下,对于Android平台的支持使libGDX的使用者越来越多。另外,基于RoboVM可以实现iOS兼容。
极强的兼容性为调试和开发提供了便利。你可以使用Android上面同样的代码在桌面PC上面编写、测试、调试你的应用(也就是说,你不需要打开Android模拟器,就可以调试用libGDX引擎写的游戏应用)。它剥离了常见的Windows之间/ Linux应用程序和一个Android应用程序的区别。一般的开发过程是尽可能地停留在桌面PC上,同时周期性地检查你的当前代码是否仍然能在Android上运行。
2.高效性libGDX主要是用Java写的,其中也掺杂了一些C/C++代码,这些代码是为了处理一些对性能要求很高的操作,比如物理引擎或者音频处理。作为用户,你只需要关注Java的封装就可以了,它已经把所有的本地代码封装好了。相比于其他android游戏引擎,libGDX的效率优势十分明显。
3.架构清晰libGDX的主要构成,如图1.1所示。
libGDX由audio、files、graphics、math、physics、scenes、utils这些主要模块所组成,它们对应了libGDX中的常用函数、接口、音频操作、输入/输出、文件操作,2D/3D渲染及libGDX绘图相关运算、网络模块。
它提供了便于设计游戏的清晰架构,如图1.2所示。
4.封装libGDX对于物理引擎的封装也是让人惊讶的。它使用jni封装了box2d的C++版本,使得其运行效率比其他同级的物理引擎如jbox2d更快。现在流行的几个包含物理引擎的Android游戏引擎(如Andengine、Rokon等),几乎都在用libGDX所封装的物理引擎。如果你的游戏(特别是针对Android平台的)准备使用物理引擎,请优先考虑libGDX。
1.1.2 libGDX中的工具
libGDX具有较为完善的配套的开发工具,如粒子编辑器(Particle editor)、文字生成工具(Hiero bitmap font generator)、图片合并工具(Texture packer)等。这些所涉及的工具都会在以后的章节中陆续介绍。现在主要是贴出其软件界面,让大家先对其有一个直观的印象。
1.粒子编辑器(Particle editor)粒子编辑器一个很明显的作用就是可以给游戏的画面添加更炫丽的效果。无论是大型游戏还是中小型游戏,基本都会有“每日登录”这一模块,而这一模块中,就经常使用到粒子效果,如图1.3所示。
2.文字生成工具(Hiero bitmap font generator)借助Hiero bitmap font generator,可以生成游戏中需要用到的字体文件。在显示游戏中的文字信息时,通常需要用到该字体文件。文字生成工具如图1.4所示。
3.图片合并工具(Texture packer)Texture packer的主要作用是将若干张小图合并为一张大图。这样在方便资源管理的同时,也尽可能地降低了GPU内存的浪费,如图1.5所示。
1.1.3 libGDX的历史
2009年中期,项目开始,初始名称为AFX。
日,项目开源,代码托管在Google Code上。
2012年5月,市场占有率超过1.24%,超过了当时的Unity、AndEngine、Cocos2D、Corona和Marmelade。
2012年,Google Ingress使用了libGDX项目。
2013年,添加3D API支持。
日,1.0正式版发布。
此后libGDX版本的更新比较频繁,截止到日。libGDX已经更新到了1.5.4版本。libGDX的作者之一Mario Zechner,也是《Beginning Android Games》一书的作者之一。
1.1.4 我的libGDX版本这本书主要围绕libGDX 0.9.8来编写。与0.9.8版本相比,libGDX1.x具有以下特点。
1.更新了基于Gradle项目的安装,不需要更多的jars,支持所有平台的简单打包。
2.移除了对OpenGL ES 1.x的支持,支持OpenGL ES 3.0。
3.移除了大量Android后端的集群,要求最低Android版本是Android 2.2。
4.Box2D转移到了扩展中。
5.大幅度的改进了Scene2D,比如viewport enhancement。
6.更新了libGDX repo、网站和wiki,移除了旧的setup UI。
7.移除了音频和图像扩展和demo都放在了仓库中。
可以看出与0.9.8版本相比,使用libGDX 1.x开发起来将会更加简便。但是其最致命的缺点是移除了对OpenGL低版本的支持而不是选择兼容OpenGL低版本,这就导致市面上相当一部分使用OpenGL1.x手机的用户将无法运行使用libGDX1.x开发出来的游戏。而这一部分用户的丢失所带来的收益上的巨大损失是很多游戏开发商所无法接受的。所以,大部分的游戏开发商还是选择libGDX 0.9.8来进行游戏开发。这也是本书选择libGDX 0.9.8来进行讲解的主要原因。与libGDX 0.9.8相比,libGDX 1.x的主要API的改动较小,它们之间的大部分内容都是类似的。
版权声明:本文内容由互联网用户自发贡献,版权归作者所有,本社区不拥有所有权,也不承担相关法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件至: 进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容。
用云栖社区APP,舒服~
【云栖快讯】中办国办印发《推进互联网协议第六版(IPv6)规模部署行动计划》加快推进基于 IPv6 的下一代互联网规模部署,计划指出2025年末中国 IPv6 规模要达到世界第一,阿里云也第一时间宣布了将全面提供IPv6服务,那么在全面部署 IPV6 前,你需要了解都在这儿&&
移动测试(Mobile Testing)是为广大企业客户和移动开发者提供真机测试服务的云平台,拥有大量热门机型,...
阿里云移动APP解决方案,助力开发者轻松应对移动app中随时可能出现的用户数量的爆发式增长、复杂的移动安全挑战等...
大数据开发套件(Data IDE),提供可视化开发界面、离线任务调度运维、快速数据集成、多人协同工作等功能,为您...
为您提供简单高效、处理能力可弹性伸缩的计算服务,帮助您快速构建更稳定、安全的应用,提升运维效率,降低 IT 成本...
订阅广场全新上线
Loading...主题信息(必填)
主题描述(最多限制在50个字符)
申请人信息(必填)
申请信息已提交审核,请注意查收邮件,我们会尽快给您反馈。
如有疑问,请联系
CSDN &《程序员》研发主编,投稿&纠错等事宜请致邮
你只管努力,剩下的交给时光!
如今的编程是一场程序员和上帝的竞赛,程序员要开发出更大更好、傻瓜都会用到软件。而上帝在努力创造出更大更傻的傻瓜。目前为止,上帝是赢的。个人网站:www.xttblog.com。个人QQ群:、
个人大数据技术博客:http://www.iteblog.com如何使用libgdx编写一个简单的游戏_百度知道
如何使用libgdx编写一个简单的游戏
我有更好的答案
不敢随意写出来,你希望控制和掌握你的代码,那么推荐你使用Libgdx。它的封装比较低级libgdx这个系列的文章开篇一年有余了。第三就是个人原因了?比起XX怎么样。它是跨平台的,支持Windows、Mac OS。如果你硬要我举个例子,不知道Google最近吸引不少眼球的Ingress能不能满足你的心理期待?有哪些游戏使用了它、Linux。Libgdx好用吗,构思设计还有宣传等等都会有很大的影响。当然使用广泛与否一定程度上关系着反馈的快捷和获取帮助的难易程度。我只能告诉你社区很活跃,任何问题都不会拖过半天(起码我遇到的情况是这样的)。我原来看过一个国外的网站,就是有一篇写一篇的。如果你想知道什么游戏使用了Libgdx,选择的面也很广。如果你觉得没有时间或者这个功夫,但也算各有不同,它统计了市场中的游戏使用了第三方库的情况,Libgdx的排名在20位以内,具体的数据和网址我记不清楚了,也许你就是看不惯某种设计模式,这种问题很难有标准的答案。游戏的美工,但是这个标题却是正确的。一些对于游戏开发更深入的东西我没有研究。Libgdx是什么我最感到庆幸的就是这个系列的文章的标题【android游戏开发框架libgdx的使用】,虽然最开始了解不深入,它对IOS的支持是基于MonoTouch和IKVM,基于Apache License 2.0协议。Libgdx的优势是什么,虽然总体架构变化不大,但是细节上的接口还是有很多差异了,而不是接受其他引擎的那套模式和理论,那么推荐你使用Libgdx,你可以轻松地和那个缓慢的模拟器说拜拜了,不敢断言。其次个人的喜欢和需求是不同的。Libgdx的缺点那么那么多…如果你真心实意的问这个问题,那么我只能说你可以选择别的,或者发挥你的实力改造它。但是有些时候请先仔细琢磨琢磨再开口。我不止一次的看到了类似的问题,现在的游戏框架和引擎有很多?说实话,我觉着这种问题意义不大,我其实并没有做过太多的游戏开发.5+),说实话。Libgdx的使用广吗,早期的一些文章的实例代码可能无法直接运行了。就原因来说是多方面的:第一是libgdx的版本从0,你可以去社区看看,有一个列表专门收集基于Libgdx的游戏。它的主要代码是java,2D的UI库和Stage给出了一套简单的解决方法。如果你追求高效,那么推荐你使用Libgdx。也许你带着有色的眼光…这货是Java的吧。当然你不想太底层但又希望一定的自由,当初接触libgdx也是相当偶然的原因,它不是一个游戏引擎。你可以使用Herio或者TTF字库。不过这里注意一个问题,Demo的风格不敢说迥异。它可以方便的在桌面环境调试你的游戏逻辑。如果你希望更自由的开发?我为什么选择它,那就双眼一闭,随便选一个吧.92到了今天的0.97版本,期间得到了很多朋友的鼓励和意见?我经常在QQ和Email里面看到这样的询问。首先我没有深入的研究过其他的游戏框架和引擎。Libgdx是一个游戏开发框架,你可以基于它开发自己的游戏引擎。比如庞大的cocos2d家族。如果你的主要语言是Java,那么推荐你使用Libgdx。如果你主要涉足Android游戏领域、GWT。Libgdx支持中文吗:Libgdx使用的图片宽与高皆为2的整数次幂,好麻烦Libgdx的文档好少Libgdx没有场景过渡效果Libgdx没有XX功能我应该如何开始群上比较常见的问题就是 我是新手,我应该怎么学习Libgdx。我个人来看最好的例子就是官方的Wiki,从理念到搭建环境再到每个细节都有说明和介绍,可以先从那里入手有个基本的了解。然后就是官方的Demo,可以看看怎么编写一个个完整的项目?很遗憾的告诉你不完全支持。不完全支持的意思是原生不支持。文章接下来的内容是一些极为零碎的东西,希望能够有所用处,整个系列来看没有一种整体的驾驭性,继续写下去我感觉意义不大,我又没有精力细细检查和修改,可能新入手的朋友们会遇到一些问题。第二就是这个系列本身的问题,我开始写的时候也没有想什么具体的东西,也许你喜欢Libgdx的这套API设计,总的来说感觉还是蛮不错的。想了很久。它是免费的、Android(1,我决定给这个系列的文章画上一个句号,甚至常常引起争端。如果你想知道哪款开发框架或引擎适合你,其中对于效率要求较高的部分是由C和C++写成的,但是你可以通过一些办法实现!好吧,我也没有做过相关的测试,不过推荐你看看这篇文章,它比较了主流的游戏框架的方方面面,你可以都试试再做出选择?我清楚问这个问题的人的意思和顾虑。但是我觉得一款游戏的好坏和它使用什么技术手段开发没有大的关系
为您推荐:
其他类似问题
下位机的相关知识
换一换
回答问题,赢新手礼包
个人、企业类
违法有害信息,请在下方选择后提交
色情、暴力
我们会通过消息、邮箱等方式尽快将举报结果通知您。}

我要回帖

更多关于 libgdx 3d 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信