问题标签 [skview]

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 投票
1 回答
666 浏览

swift - 如何在 SKScene 中正确设置 UIButton

我在我的场景/视图中设置了一个 UIButton,当 ViewController 调用场景时,该按钮会显示。问题是当我单击按钮并调用我的 GameScene 时,按钮仍然存在。我想我以错误的方式设置了按钮。
我想问题是我不能removeFromSuperview()在我的函数中调用 button1 上的startGame函数。

我怎样才能解决这个问题?任何帮助表示赞赏!

0 投票
1 回答
98 浏览

ios - 我应该使用 UIView 和 UILabel 在 SKView 上显示游戏详细信息吗

我是游戏开发的新手,想知道在屏幕上显示游戏数据的最佳方法是什么。

我有一个无尽的跑步者,精灵收集宝石,我希望总数显示在屏幕上。我正在考虑在 SKView 上方放置一个带有 UILabel 的 UIView,并在每次触摸后更新标签。我还希望最后出现一个游戏结束屏幕,并且还在考虑使用 UIView 创建它。

这是最好的方法还是应该将所有数据保存在 SKView 本身中?

希望这是有道理的。

0 投票
0 回答
58 浏览

ios - SKView 暂停后没有恢复

我正在开发一个应用程序,其中我使用 SKView 作为 View Controller 的视图。

当用户点击屏幕上的任何按钮并按下新的 UIViewController 时,我暂停了视图:

暂停查看代码

self.emitterView.paused = true;

在 viewWillAppear 我只是通过以下代码恢复视图:

简历查看代码

self.emitterView.paused = false;

但它不工作视图仍然暂停,直到我点击屏幕。我还检查了发射器视图和工作呈现的场景的更新方法。

注意:相同的代码在应用程序背景和前景上运行良好。

视图控制器推送和弹出

0 投票
1 回答
185 浏览

ios - SKView! found nil when presented

}

After I play a video on 'MyClass' (Class Above)

I then remove the view and present my GameContollerView1 which has the GameScene.
(Class below)

}

My Initial Problem is that when I present the class 'GameViewController1' I get the error:

at this line:

So it's telling me that my SKView! is nil, which as you can see by my if statement, is what i was looking for anyways.

The weirdest part about this, is that when I skip over 'MyClass' and point my StoryBoard Entry Point to the GameViewContoller1 first, all the code plays correctly.

Does the AVPlayer() have something to do with this? Logically my code should work but for some unknown reason.. it's not. any help would be extremely appreciated.

0 投票
0 回答
242 浏览

ios - textureFromNode:crop: 返回 nil,而 textureFromNode: 工作正常

当用户按下屏幕时,我试图在用户手指后面显示放大的场景预览。我提取节点的纹理并使用以下代码将其添加回场景

当我使用带有crop rect的方法时,它返回nil,但没有crop,它返回的纹理很好。

我不能先得到完整的纹理然后再裁剪它,因为整个节点树可以扩展到超过 4098 点,并且在这种情况下精灵套件返回空纹理。

我不能使用 UIView drawViewHierarchyInRect 方法,因为它会返回一个带有预览本身的快照。

我创建了一个示例项目来重现问题 TextureFromNodeBug

更新:

这个问题在 iOS 9.2 上没有被复制,所以这可能是一个框架错误

0 投票
1 回答
112 浏览

skview - SpriteKit:使用过渡呈现初始场景

我在我的游戏场景之间创建了多个过渡,所以我不确定为什么这段代码不起作用。

在我的 GameViewController 中,我只是将我的 TitleScene 设置为下一个场景,但我希望它淡入。我在 touchesBegan 中成功地做到了这一点。

这是代码:

0 投票
0 回答
176 浏览

ios - SpriteKit - SKView / SKScene / SKCameraNode 组合产生问题

假设我有一个定义为 320x2000 的 SKScene。我会将它显示在 320x480 屏幕上,因此它不会在给定时间显示所有内容。现在我想要一个英雄飞过场景,这样他总有一天会到达 y=2000 场景的尽头。为此,我有一台相机。像这样实现:

发生的情况是 a) 我的场景不会从屏幕底部开始,有大约 30% 的屏幕大小的空白位。b) 在场景中“飞行”了一段时间后,玩家精灵消失了。

另外,我在 didMoveToView() AND update() 中使用了这个调试代码:

这是 didMoveToView() 的输出:

这是 update() 的输出:

所以:我的场景以某种方式调整大小。我想我在这里做错了什么。我只是想要一个大的(比设备的视图更大的)场景部分出现在视图中,让玩家能够飞过场景直到它结束。另外我正在使用 .ResizeFill 让场景/视图适应用户设备的大小。这就是为什么我选择 320 的宽度 - 它应该很容易缩放到彼此的苹果设备尺寸。但不知何故,这不适用于 iPhone 6s+ 模拟器。

感谢您对我在视图/场景/相机设置方面做错的任何建议。

0 投票
1 回答
676 浏览

swift - 应用程序激活后保持游戏暂停?

这是我在这个论坛上的第一篇文章,如果我做的事情不正确,我提前道歉!:)

我正在使用 Swift & SpriteKit 制作 iphone 游戏,但我目前面临一个问题。当我的应用程序进入后台时,它会调用一个函数 pause(参见下文),但在游戏恢复时它会自动取消暂停。

我看过这篇非常有趣的帖子:Spritekit - 在 didBecomeActive 时保持游戏暂停(以及如何在应用程序变得活跃时保持 SpriteKit 场景暂停?)但我被卡住了。

我不知道如何实现新的 SKView 类,因为我的 View 配置如下面的代码所示......

这就是我的应用程序的工作方式:

我尝试了以下方法:

我添加了一个新类:

然后,我尝试将我的视图设置为,let SkView = view as! GameSceneView但我收到一条错误消息,说我无法将视图投射到 MyProjectName.GameSceneView()... 我还尝试了以下操作:let SkView! = GameSceneView() as GameSceneView!但我最终得到了一个灰色的背景场景...

有谁知道我如何实现新的 SKView 类以防止发生 CBApplicationDidBecomeActive() 错误,以便游戏在激活时不会取消暂停?

非常感谢您提前!:)

0 投票
1 回答
2271 浏览

swift - 如何在 SKView 之上添加 UIView?

我想在 SKView 之上添加一个自定义 NSView。但是,它永远不会出现。不知道发生了什么...

谁能让我深入了解这里发生的事情?我什至尝试在 MainStory 板上添加一些 NSLabel。什么都没发生。

我想在 SKScene 上用 Coregraphhics 和 Show 绘制一些东西。但是,我无法继续前进。

https://github.com/cocoBavan/NSViewInSpriteKit

0 投票
2 回答
1612 浏览

swift - SpriteKit 中的水平滚动(与视图控制器相比)

我对处理这个问题的正确方法有点困惑:

在我的游戏中,我允许玩家从 5 个区域中进行选择。一个区域只不过是屏幕上的一个矩形,您在该区域中完成的百分比。整个列表居中,看起来不错。

..最终会有更多区域,但我不希望它们位于多行(我希望玩家滑动以滚动它们)。

迄今为止,我的游戏的所有功能都是使用 SpriteKit 实现的(我只有一个视图控制器,除了展示我所有的 SKScenes 之外我不使用它)。

为了实现上面想要的功能,我现在需要引入一个带有 UICollectionView 的视图控制器吗?

我宁愿保持一致并且只使用与 SKView 相关的代码,但我是否会通过允许滑动/滚动来重新创建 UICollectionView?任何人都可以推荐一种在 SpriteKit 中执行此操作的方法,或者您会说这通常是一个坏主意吗?

非常感谢!