问题标签 [gameplay-kit]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
33 浏览

swift - 加载时图像不会更新,直到结束

我正在尝试编写一个例程来掷骰子。我希望在登陆最终数字之前改变几次脸。下面的代码没有显示换模面。我添加了 sleep 语句,希望它有时间更新,但它只是保留初始面直到结束,然后显示最终面。更改纹理后是否有要添加的语句以强制视图更新?

0 投票
1 回答
114 浏览

ios - 提高 GKAgent 的速度

我正在使用 gamekit 开发游戏,我正在尝试使用worldNode.speed = 4.0.

动画速度更快,但具有某种行为的代理(GKAgent)不会提高在某个点移动的速度。

我怎样才能做到这一点?

谢谢

0 投票
0 回答
141 浏览

ios - 使用 SpriteKit 相机节点防止位置偏移

我注意到centerOnNode:如图所示的方法,

极大地影响了子节点的相对定位。一旦此方法运行,子节点实际上似乎受到了影响。下图显示了 NO 移动的逻辑,然后向左移动并略微向下移动:

在此处输入图像描述 在此处输入图像描述

我画了一个浅蓝色框来估计路径似乎引用的物理体,而不是更新的帧。您看到的线条和圆圈代表我用于寻路的 2 种方法。

  • 带点的线只是我正在做的射线测试,以查看沿绿线的射线是否与方形物理体相交。
  • 您在顶角看到的单点是GameplayKit用来构造一条避开黑色方块作为障碍物的路径。

我正在努力弄清楚如何避免相机重新定位影响场景中儿童的定位。

仅供参考:我已经通过移动角色而不是相机测试了寻路,它工作得很好(如下所示)

在此处输入图像描述

显然,相机偏移是问题所在。如果有人能告诉我如何保持相机移动和寻路精度,我将不胜感激。

0 投票
1 回答
140 浏览

ios - 将 SKNode 链接到 GKAgent2D?

我是新手,GameplayKit因为大多数人都有它的寿命,并且一直在试图弄清楚以下内容..

我有一个SKNode *enemy已经从运动到风格、习惯等进行了相当多的工作和定制。所有这些都来自SpriteKit. 我的问题是这样的:

  • 如何将我的敌人节点“链接”到 aGKAgent2D以便它控制该节点的移动?

我知道您必须创建一个GKComponent并使用 Sprite 节点来表示该组件,也许可以选择特定的纹理。GameplayKit但我想知道是否有一种方法可以使用在现有节点上提供的内置“控制移动”方法。如果答案是“否”,请直接说出来并解释为什么?我很感激任何帮助。谢谢!

0 投票
1 回答
73 浏览

ios - Prevent Node From Leaving Boundary

I am using GameplayKit to create paths around obstacles in a given map boundary (lets say a rectangle 1000x1000).

I know that you can make certain nodes avoid "obstacles" when pathfinding, which I am using quite nicely. What I am curious about however is such:

  • Is there a way to use this same logic and count anything not in the map boundary as an "obstacle"?

A work around would be to create 2 SKNodes and fit them together to create an inner "hole" which becomes 1000x1000, but I am trying to avoid unnecessary addition of nodes if there is a better way. Below I am showing what I could do.

Ideally I want to make the red and black area treated as an obstacle so that all paths remain inside the main square.

enter image description here

UPDATE: I am using GameplayKit as I have already said, and the pathfinding algorithm can not count regions that are NOT included in a given physics body as an obstacle. It can only count obstacles to be closed polygons that lie within a region. Creating the 2 nodes as shown above works because the pathfinding will now not be able to create any points that lie outside the green rect.

0 投票
2 回答
185 浏览

ios - GameplayKit -[GKGraph dealloc]:在 iOS9.2 上崩溃

我用 Swift 和 GameplayKit 编写了一个名为“Spiral”的游戏。但是当我的GKGridGraph实例 dealloc 时,应用程序总是崩溃。这只发生在 iOS9.2 上。我已经在 iOS9.0 上测试了我的代码,一切都很好。这是崩溃调用堆栈:

GKGridGraphMazeModeScene课堂上使用:

0 投票
1 回答
328 浏览

ios - 您如何确定 GKRuleSystem 中 GKRules 的评估顺序?

我正在探索 Apple 的 GameplayKit API,目前我对 GKRuleSystem 评估其规则的方式感到非常困惑。文档说显着性属性决定了评估的顺序,首先评估更高的显着性规则(https://developer.apple.com/library/ios/documentation/GameplayKit/Reference/GKRule_Class/index.html#// apple_ref/occ/instp/GKRule/salience)。但在实践中,这似乎不会发生:

如果我颠倒这两个事实的显着性,那么结果是“事实 A 评估为 0.75”。

我希望当我的 strongRule 的显着性为 10 时,它将首先被评估,并且事实 A 将被断言为 1.0。然后将评估weakRule,并以0.25 的值收回事实A,从而得出0.75 的事实等级。但这仅在weakRule 具有更高的显着性时才有效。

这让我更加困惑,因为如果首先评估弱规则,我希望事实 A 的值为 0;事实的等级只能是 0 到 1.0 之间的值。然后我希望 strongRule 被评估并以 1.0 的成绩断言事实 A。但事实并非如此。

0 投票
1 回答
1264 浏览

ios - 如何在 GameplayKit/SpriteKit 中有效地为实体和组件建模

从这里的 GameplayKit 开始,我正在建模一个无尽的跑步者,玩家可以通过点击屏幕在角色之间切换。角色第一次可以近距离攻击(分量),第二次跳跃(分量),第三次射击(分量)。

我想知道在这两者之间建模的最佳方式是什么:

  1. 创建一个具有 3 个不同字符实体(数组)的 Player 类,其中一个具有它的组件

  2. 创建一个具有 3 个不同角色组件的实体 Player 并添加所有运动和动作组件(射击/跳跃......)

这是一个真正的大项目,所以我担心保持代码可维护性和可读性的最佳方法

附言:。SpriteComponent 将是 .sks 上所有实体的负责视觉表示的组件。

PS2:。如果可能,请快速举例。

感谢您的时间。

0 投票
1 回答
320 浏览

ios - GKComponentSystem 没有更新周期的组件

我在玩 SpriteKit 和 GameplayKit。但是当我运行我的代码时,我期望四处游荡的精灵什么都不做。

我使用 lldb 打印出一些值,这是打印出来的:

第一个是在addComponentWithEntity:调用之后打印的。第二个打印在update:方法中。

当然,这一定是精灵不徘徊的原因,但可能导致问题的原因是什么?

我什至查看并使用了 Apple 的Agent 示例代码中的代码,但这似乎仍然无法解决问题。

这是我场景的代码:

0 投票
1 回答
855 浏览

swift - 使用 GameplayKit 生成随机数

我正在学习使用 swift 和 Gameplaykit 生成随机数。在下面的代码中,是在我初始化 randomDist 时生成的数字,它只是在我调用 nextInt 时从已经生成的数字中提供一个样本,还是在我调用 nextInt() 时随机生成器是惰性生成的?