我正在开发一款带有cocos2D游戏引擎的游戏,并在加载sprites关卡的同时加载,现在因为一些sprites(障碍物)高于320像素,因此似乎很难检查它们.所以为了方便起见我想要应用ZOOM IN和ZOOM out效果,它最大限度地减少了整个级别的所有精灵,并且在缩小的情况下,这些将存在于旧的位置.
我能做到吗?
如果是,那怎么样?
请告诉我有关缩放的信息.
之前可能已经问过这个问题,但我在搜索时没有找到它.
有人能指出我为Crafty.js做一个很好的最新教程吗?我似乎无法找到一个,我无法理解它.如果没有好的教程,那么有没有其他HTML5游戏引擎库和一个很好的教程?
编辑:我曾尝试阅读'starmelts'教程,但它们对我来说似乎有点混乱.
编辑2: HTML5游戏引擎只需要在桌面浏览器上工作,尤其是chrome.
这是一个严肃的问题,我在理解它与完全没有之间"陷入困境".我对阅读不同资源的时间非常困惑,并希望有人指出我正确的方向.
我正在使用Android平台,直到现在我已经使用了Canvas一些OpenGL ES 1.0,但主要是通过引擎或已经构建的代码来尝试和理解它.
我的目标是实际理解OpenGL ES 2.0.我不想直接去复杂的东西,从简单的东西开始,但我只是不知道怎么做.我可以得到一个正方形,我可以设置相机和矩阵; 告诉你实话我真的不明白整个矩阵系统及其工作原理,如果我是对的,它是一个固定功能管道,你不需要改变OpenGL ES 1.0但现在它是一个可编程管道你必须自己设置.
我不知道如何使用坐标系,我知道原点是设备的中心,每次转向边缘都是1,所以从中心到左边它将是负1.
然而,有一些方法可以将它变成一个不同的坐标系,也许只是使用比例或乘法矩阵来将协调设置为我曾经习惯的东西Canvas.
基本上我需要帮助的是如何从这里进步?我觉得好像到了某个地方,但我仍然无处可去.
我真的需要一些关于如何正确使用的建议OpenGL ES 2.0,因为现在我正在计划的是一个简单的2D游戏,也许是侧滚动,所以我将不得不弄乱相机矩阵.
感谢您的时间,我将非常感谢您的帮助.
*我对转换矩阵不太感兴趣,因为我不认为2D游戏真的会使用它,也许只有当我镜像角色的精灵所以它看起来好像他走的是另一个方向,但我很确定通过改变协调和宽度可以使这变得简单.
我参加了一个AI课程,老师要求我们实现一个利用其中一个AI算法的游戏.这是我需要一些帮助的地方:
我不需要任何编码帮助,我可以管理(我选择的语言是Java).我在选择算法时只需要一些帮助.
在编写动画和小游戏时,我已经知道了Thread.sleep(n);当我的应用程序不需要任何CPU时,我依靠这种方法来告诉操作系统,并且使用这个让我的程序以可预测的速度进步,这非常重要.
我的问题是JRE在不同的操作系统上使用不同的实现此功能的方法.在基于UNIX(或受影响)的操作系统上,例如Ubuntu和OS X,底层的JRE实现使用功能良好且精确的系统将CPU时间分配给不同的应用程序,从而使我的2D游戏平滑无滞后.但是,在Windows 7和较旧的Microsoft系统上,CPU时间分配似乎有所不同,并且您通常会在给定睡眠量后恢复CPU时间,与目标睡眠时间相差约1-2毫秒.但是,偶尔会有额外10-20毫秒的睡眠时间爆发.这导致我的游戏在发生这种情况时每隔几秒就会滞后一次.我注意到我在Windows上尝试过的大多数Java游戏都存在这个问题,Minecraft就是一个明显的例子.
现在,我一直在互联网上寻找解决这个问题的方法.我已经看到很多人只使用Thread.yield();而不是Thread.sleep(n);,无论你的游戏实际需要多少CPU,它都会以当前使用的CPU核心满负荷为代价完美运行.这对于在笔记本电脑或高能耗工作站上玩游戏并不理想,而且在Mac和Linux系统上进行不必要的权衡.
进一步展望我发现了一种常用的纠正睡眠时间不一致的方法,称为"旋转睡眠",你只能一次命令睡眠1毫秒,并使用该System.nanoTime();方法检查一致性,即使在微软系统上也是如此.这有助于正常1-2毫秒的睡眠不一致,但它无法帮助抵抗偶尔爆发+ 10-20毫秒的睡眠不一致,因为这通常会导致花费更多的时间比我的循环的一个循环应该花费所有一起.
经过大量的观察,我发现了这篇神秘的Andy Malakov文章,这对改善我的循环很有帮助:http://andy-malakov.blogspot.com/2010/06/alternative-to-threadsleep.html
基于他的文章我写了这个睡眠方法:
// Variables for calculating optimal sleep time. In nanoseconds (1s = 10^-9ms).
private long timeBefore = 0L;
private long timeSleepEnd, timeLeft;
// The estimated game update rate.
private double timeUpdateRate;
// The time one game loop cycle should take in order to reach the max FPS.
private long timeLoop;
private void sleep() throws InterruptedException {
// Skip first game …Run Code Online (Sandbox Code Playgroud) 我想通过构建一个简单的2D游戏开始学习HTML5与canvas.我想构建一个看起来像这样的:http://www.youtube.com/watch?v = h4SgiVCPfPk
您是否建议我可以使用任何框架或游戏引擎来执行此操作?
如果我理解正确,LibGDX正在使用addActions方法旋转图像:
this.addAction( parallel(rotateBy(360, 0.5f), moveTo(320, 100, 0.5f)));
Run Code Online (Sandbox Code Playgroud)
问题是,它正在被 图像的点=(0,0)旋转.
这是我的问题:
有没有办法按对象的中心点旋转图像?有点像把它固定在中间然后把它变成汽车的轮子?既rotateBy和rotateTo方法由图像本身的(0,0)点转动.
我最近一直在研究游戏开发,我的第一个编程语言是Java.在玩了很多以c ++开发的精彩游戏后,我想知道为什么Java在游戏行业中没有大量使用.我查看了jMonkeyEngine 3和其他一些游戏引擎环境,但我看到的屏幕截图远不那么令人惊叹.来自ubisoft的极品飞车热门追逐形式EA和刺客信条等标题传达了这种现实主义.为什么Java不能生产这样的行业实力游戏?这是艺术作品吗?
Java和C#具有自动垃圾收集功能,而c ++则没有.程序员必须密切关注内存使用情况,以及avoud悬空指针等.
多谢你们.
今天,我读到了有关FRP(功能反应式编程)的内容.但是,我不知道这适合发动机本身.
阅读Gerold Meisinger的文章后,我的问题是,如果使用FRP而不是基于组件的架构是值得的.这是游戏引擎架构设计的不久的将来吗?这只是解决基于组件的架构的小问题的一种简单方法吗?我很欣赏任何文章,解释,个人意见等.
想想商业游戏的引擎,特别是射击游戏或赛车类型(3D游戏).不要考虑2D平台或其他更简单(谈论引擎复杂性)的平台.我使用C/C++(我注意到使用FRP的人依赖于Haskell,因为它的性质.但是,我看到这个文档并且更喜欢站在C++上,作为"行业标准").
我正在制作游戏,我在教程中看到一些人使用Stage类,而其他人使用Screen类,但我无法弄清楚差异.
game-engine ×10
java ×4
android ×3
html5 ×2
libgdx ×2
2d ×1
algorithm ×1
animation ×1
architecture ×1
c++ ×1
components ×1
craftyjs ×1
frp ×1
iphone ×1
javascript ×1
matrix ×1
objective-c ×1
opengl-es ×1