Sprite kit 限制精灵套件帧速率
我是编程新手,正在制作一个精灵工具包游戏。我正在制作一个大图像的滚动背景,这将帧速率降低到30fps。但是在游戏开始时,在其他精灵进入之前,帧速率在30到60帧之间变化。因为我在更新方法中移动背景,所以背景滚动的速度在不断变化。我想限制最大帧速率为30fps,以实现恒定速度。 我也听说过使用Delta time来实现恒定速度,但在网上找不到相关的教程Sprite kit 限制精灵套件帧速率,sprite-kit,frame-rate,Sprite Kit,Frame Rate,我是编程新手,正在制作一个精灵工具包游戏。我正在制作一个大图像的滚动背景,这将帧速率降低到30fps。但是在游戏开始时,在其他精灵进入之前,帧速率在30到60帧之间变化。因为我在更新方法中移动背景,所以背景滚动的速度在不断变化。我想限制最大帧速率为30fps,以实现恒定速度。 我也听说过使用Delta time来实现恒定速度,但在网上找不到相关的教程 提前谢谢 您可以通过将SKView设置为2来实现这一点 它将有效地将最大帧速率从60降低到30。frameInterval现已被弃用 将SKVie
提前谢谢 您可以通过将SKView设置为2来实现这一点
它将有效地将最大帧速率从60降低到30。frameInterval现已被弃用 将SKView对象的属性设置为30 例如(swift 3.2):
// ViewController.swift
import Cocoa
import SpriteKit
import GameplayKit
class ViewController: NSViewController {
@IBOutlet var skView: SKView!
override func viewDidLoad() {
super.viewDidLoad()
if let view = self.skView {
skView.preferredFramesPerSecond = 30//this will set framerate to 30
// Load the SKScene from 'GameScene.sks'
if let scene = SKScene(fileNamed: "GameScene") {
// Set the scale mode to scale to fit the window
scene.scaleMode = .aspectFill
// Present the scene
view.presentScene(scene)
}
view.ignoresSiblingOrder = true
view.showsFPS = true
view.showsNodeCount = true
}
}
}
您正在设备上测试吗?如果没有,那么模拟器的性能就不能代表设备上的真实设备。性能要好得多。谢谢