SKTextureのテクスチャにミップマップを適用する方法がわかりません。私はSwiftでXcode 8.2.1を使用しています。ここでSpriteKit SKTextureのミップマップが機能しない
は私の方法である:私は(ポットの両方) フルサイズ:512×512サイズのPNG形式サンプル画像を使用し
override func sceneDidLoad() {
logo = childNode(withName: "logo") as! SKSpriteNode
let texture: SKTexture! = SKTexture.init(imageNamed: "logo")
texture.usesMipmaps = true
logo.texture = texture
}
その後、私はそのサイズを小さくしたいです128個の* 128ピクセル
そして、ここまでで出力されます有効ミップマッピング:ミップマッピングなし
を(のみリニアフィルタリングデフォルト)。だからミップマップは当てはまりませんでした。私を助けてください、私はこの問題を解決しようと3日間過ごしました。
UPD: Confused私に言われたように、私はコードですべての仕事をしました。ミップマップを有効にしてテクスチャを作成し、それをSKSpriteNodeに割り当ててから、スケール方法またはアクションでスケーリングを実行します。
let texture = SKTexture.init(imageNamed: "logo")
texture.usesMipmaps = true
logo = SKSpriteNode.init(texture: texture)
logo.position = CGPoint(x: 0, y: 0)
self.addChild(logo)
//logo.scale(to: CGSize(width: 128, height: 128))
let scaleAction = SKAction.scale(to: CGSize(width: 128, height: 128), duration: 1)
logo.run(scaleAction)
あなたはそうです。彼らはまったく同じです。私はそれらをPhotoshopにドロップし、Differenceブレンドを行いました。ミップマップを使用しないものは、スクリーンショットでは左に1ピクセルありますが、一度修正すれば同じです。 – Confused