skscene相关内容

在 SpriteKit 中创建按钮:Swift

我想在 SpriteKit 或 SKScene 中创建一个按钮,将视图发送到另一个视图控制器. 我尝试使用“performSegue with identifier",但显然 SKScene 不支持这一点.如何使用 SpriteKit 创建一个将视图发送到另一个视图的按钮? 这是我尝试用来执行此操作的代码. 带有“HomeButton.prepareForSegueWithIde ..
发布时间:2022-01-11 12:31:01 移动开发

SpriteKit:为什么SKView在一个高度消失,却在另一个高度出现?SKView 的最大高度是多少?

下面的代码显示 SKView,直到您将 skHeight 更改为 2050 或更高的值,例如 5000. 1) 如何让 SKView 出现在 2050 或 5000 的高度? 2) SKViews 的最大尺寸是多少? 重现: 1) 运行以下代码.您将看到 SKView 显示为灰色窗口. 2) 将 skHeight 更改为 2050 或 5000.SKView 不再出现 ..
发布时间:2022-01-11 12:27:43 移动开发

如何使用社交框架呈现来自 SKscene 的 UIViewController?

我正在制作像 Flappy Bird 这样的游戏.如何呈现来自 SKScene 的 UIViewController?首先,我告诉我的环境 Mac OS X 10.9 Xcode 5.0.2 Sprite Kit(framework), social.framework(framework) 已添加到我的项目中 我的目标是在游戏结束时显示“分享"按钮.点击分享按钮图像应该会显示 ..

iPhone 5s SpriteKit 画怪

我了解 iPhone 5s 的像素分辨率为 640 x 1136,点分辨率为 320 x 568(用于向后兼容非 Retina 设备). 当我使用 SpriteKit 时,问题/困惑/奇怪似乎出现了.示例: 我正在从左下角 (0, 0) 到右上角(宽度、高度)画一条线.结果是这条线几乎画了一半.事实上,当我打印出屏幕尺寸时,它应该是 320 x 568.所以我决定从 (0, 0) 绘制 ..
发布时间:2022-01-11 12:24:52 移动开发

在 SpriteKit 中配置 SKScene 内容的正确位置在哪里?

是否可以在 init 方法中配置(定位精灵、添加可见节点等)SKScene 的内容? 这些东西的正确位置在哪里:init?didMoveToView?还有什么? 解决方案 didMoveToView: 每次由 SKView 呈现场景时都会调用.在 didMoveToView 中定位和添加精灵的优点:您可以初始化许多视图而不会占用大量内存.缺点:如果您删除一个视图,然后再次添加它, d ..
发布时间:2022-01-11 12:20:22 移动开发

关闭 SKScene 返回 UIKit 菜单

SpriteKit 游戏结束后,我想回到我的 UIKit MenuViewController.根据我目前所学到的,使用 protocol/delegate 是最好的(?)选项,但我无法让它发挥作用.我知道该协议可能会超出 GameViewController 的类声明,看起来像: 协议 GameViewControllerDelegate {var gameOver: 布尔?} 但我需要帮助 ..
发布时间:2022-01-11 12:20:08 移动开发

如何在 spritekit 中向节点添加滑动手势

我正在尝试向节点添加滑动手势,以便当用户滑动它时,它会离开屏幕,但我不断收到 SIGABRT 错误: `由于未捕获的异常“NSInvalidArgumentException"而终止应用程序,原因:“-[fidget2.PlankScene swipedRight:]:无法识别的选择器发送到实例 0x7ff4c3603e00"` 我不确定为什么会弹出此错误.我确保在 .sks 文件中正确标记了 ..
发布时间:2022-01-11 12:15:55 移动开发

SpriteKit 游戏中的 AVAudioPlayer 和性能问题

我在使用 AVAudioPlayer 并在我的 spritekit 游戏中播放短声音时遇到问题.我有非常动态的游戏场景,当用户点击特定元素时,我想播放简单的“哔"声,但我注意到使用 AVAudioPlayer 执行声音会导致严重的性能问题. 我的音频文件是 .mp3 格式. 我还尝试了 SKAction 方法 (playSoundFileNamed) 来执行声音,一切看起来几乎一样,我 ..
发布时间:2022-01-11 12:10:19 移动开发

呈现 SpriteKit 场景时出现内存泄漏

我有一个 SKScene,它是我的 2D 游戏的主世界.它就像一个玩家可以探索的社区.小区里到处都是房子.玩家可以自由进出房屋.当玩家进入房屋时,我调用 skView.presentScene(newHouse) 将房屋内部呈现为新场景.当玩家离开房子时,我调用 skView.presentScene(overworld) 再次呈现邻里.玩家很可能进入 &当他们探索附近时,多次离开房屋.因此,邻里 ..
发布时间:2022-01-11 12:10:13 移动开发

SKScene 无法释放内存导致有限的内存增长

我已经为此苦苦挣扎了好几天,由于某种原因,我的 SKScene 没有正确释放,这导致内存增长有限,因为每次我退出并进入场景时,内存都会跳跃.这意味着在游戏进行了 10 轮之后,应用程序崩溃了.据我所知,经过多次检查后,我没有任何保留周期或对场景本身的强引用,虽然我知道纹理被缓存并保存在内存中,但一旦预加载,内存不应该每次都增加. 这就是我在视图控制器中设置 skview 和第一个场景的方式: ..
发布时间:2022-01-11 12:08:52 其他开发

以编程方式创建 SKScene 子类,没有大小信息?

我正在尝试学习如何制作 GameManager 类型的类,并为我的每个 GameScenes 制作单独的类...可能是错误的做法,但为了这个问题,请接受这种方式做事. 我的 GameManager 看起来像这样,对每个场景都有一个引用,这是静态的: 导入SpriteKit通用汽车类{静态让场景2 = SecondScene()静态让场景3 = 第三场景()static let home = ..
发布时间:2022-01-11 12:04:27 移动开发

如何从 Sprite Kit 场景中引用当前的 Viewcontroller

我很难找到这个问题的答案,我认为这并不难. 如何从 SKScene 引用视图控制器上定义的方法和属性? 并以此为基础:如何从另一个 SKScene 中加载的 SKScene 引用 ViewController? 解决方案 比我的“反向引用"答案更好的选择是使用协议显式定义 SKScene 子类期望的方法UIViewController 子类来实现.以下是您需要完成的步骤. ..
发布时间:2022-01-11 12:00:43 移动开发

Swift 3 (SpriteKit):游戏结束后重置 GameScene

我想要“重置"和“重新启动"GameScene,就好像第一次调用了 GameScene.我已经查看了不同的方法来执行此操作,但是每次我收到警告说我正在尝试将节点添加到已经有父级的父级.但是,在我的代码中,我删除了所有现有节点,所以我对如何重置 GameScene 感到非常困惑.我现在就是这样做的(当我想从头开始重新启动 GameScene 时会调用此代码,并在 GameScene 类中调用它): ..
发布时间:2022-01-11 11:47:16 移动开发

快速,删除 SKScene 后如何使内存恢复正常?

我用 SpriteKit 创建了一个简单的游戏,但是每次运行游戏时,模拟器中的内存使用量都会增加大约 30mb,但游戏结束后不会减少. 当我运行游戏十次以上时,模拟器变得越来越慢,最终崩溃. 在这个简单的游戏中,我有两个控制器和一个游戏场景: MainController 通过触发按钮调用 GameViewController 在 GameViewController 中, ..
发布时间:2022-01-11 11:46:03 移动开发

从 SKScene 返回查看控制器

因此,当您使用 SpriteKit 模板创建项目时.你有你的视图控制器和你的 SKScene. 在我的视图控制器中,我使用默认给出的代码开始我的游戏并呈现场景. 在我的 TCAViewcontroller.m 中 - (IBAction)startGame:(id)sender {NSLog(@"开始游戏触发");mainPageImage.hidden = 1;//配置视图.//在 ..
发布时间:2022-01-11 11:42:53 移动开发

SpriteKit - SKScene 边界不等于 SKView 边界

最近我创建了一个新的 Xcode - 游戏项目.我没有接触任何东西就运行了模板.我期待一个标准的 Hello World! 应用程序,但我注意到了一件事.我在顶部和底部得到了场景cut,而不是漂亮的背景. 如何让它填满整个屏幕? 解决方案 看起来默认的 SpriteKit 游戏模板缺少启动屏幕.您需要手动添加: 添加启动屏幕: 新建文件->iOS->用户界面 ->启动屏幕 ..
发布时间:2022-01-11 11:42:37 移动开发

应用程序激活时如何保持 SpriteKit 场景暂停?

有没有办法阻止 SpriteKit 在进入前景/变得活跃时自动取消暂停场景? 我设置 paused = true 并希望它保持不变,即使应用程序在发送到后台后再次变为活动状态. 我应该补充一点,我正在迅速执行此操作,尽管我没想到在这方面的行为会有所不同. 解决方案 我对 Knight0fDragon 的解决方案进行了一些调整,使其适合我.这使得 isPaused 将始终等于 r ..
发布时间:2022-01-11 11:42:10 移动开发