java - Spritekit 的 SKActions(moveBy) 是否有 Java 对应项?

标签 java android swift android-studio sprite-kit

在将我的一些游戏发布到 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 上涵盖,但我们需要做的一般事情是:-

  1. 在屏幕上绘制对象(它们最初应该在的位置)
  2. 然后我们必须设置游戏环境,让游戏在 while 循环中运行,并且至少应为用户提供 60 FPS。
  3. 然后在 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/

相关文章:

android - 在 Android 中启动一个 AnimationDrawable

swift - 如何在 Xcode/Swift com.apple.developer.healthkit.background-delivery 中添加此权利?

java - 哪个性能更高 - 读取 Jolokia 的 JMX 或通过 REST api 获取指标

java - 如何在 Java 中递归查找文件?

java - 无法在Android应用程序中通过php和java从数据库获取字符串

java - Android 操作系统从版本 9 升级到 10 后无法获取设备 ID

ios - 从 AppDelegate 移动到 View Controller 后 Swift App 崩溃

swift - 在 Swift 中检测并删除空白的 tableViewCell

java - 线程中出现异常 "main"java.lang.NullPointerException

java - 如何检查字符串是 IPv4/IPv6 还是域名? ( java )