在将我的一些游戏发布到 IOS 应用商店后,我正在努力将它们转换为 Android。我想为屏幕上的对象添加一些 Action 。在Spritekit中,您可以简单地使用以下命令将节点移动一定的长度:
Node.run(SKAction.move(by: CGVector(x,y), duration: time))
这对于为屏幕上的内容提供运动非常有用,并且希望在 Java 中复制它。有谁知道如何做到这一点?
最佳答案
不幸的是,在 Android 中移动对象并不是那么容易。
iOS 和 Android 有一些区别,iOS 提供了易于使用的框架,Android 没有任何易于使用的原生框架。
现在在 Android 中该怎么做?
首先让我们学习一些基础知识:-
- iOS 有 SpriteKit,Android 有 Canvas
- SpriteKit 可以使用 Node 的概念在屏幕上显示对象。 Canvas 使用位图在屏幕上绘制对象。
现在,这个话题太大了,无法在 Stackoverflow 上涵盖,但我们需要做的一般事情是:-
- 在屏幕上绘制对象(它们最初应该在的位置)
- 然后我们必须设置游戏环境,让游戏在 while 循环中运行,并且至少应为用户提供 60 FPS。
- 然后在 while 循环内添加移动对象逻辑。因此,给用户一种物体在 10 秒内移动 (2, 6) 位置的错觉。
我实际上只是向您展示代码,它是这样做的 https://bitbucket.org/jenelleteaches/android2d-pongclone/src/master/MainActivity.java
在进入 Andorid 中进行 2D 游戏开发之前,建议阅读这本书:- Android 游戏编程示例。这是Packt发布的
关于java - Spritekit 的 SKActions(moveBy) 是否有 Java 对应项?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59112977/