UnityでHow to increase (animate) the width of the square on both endsと似たようなことを達成しようとしています。スクリーン幅全体を満たすために(スプライトの)幅を増やすスケールをどのように決定できますか?以下はスプライトの幅を画面の幅に拡大するスケールを決定する方法
UPDATE
私はフルスクリーン幅を取るためにスプライトの幅を拡大するために実装するためにスウィフトコードです:
func expandEnemy() {
spritePosBeforeScaleX = CGPointMake((enemy?.sprite.position.x)!, (enemy?.sprite.anchorPoint.y)!)
enemy?.sprite.anchorPoint = CGPointMake((enemy?.sprite.position.x)!/self.size.width, (enemy?.sprite.anchorPoint.y)!)
let enemyScalingAction = SKAction.scaleXTo(self.size.width/(enemy?.sprite.size.width)!, duration: 1.0)
enemy!.sprite.runAction(enemyScalingAction)
delay(0.1)
{
center = CGPointMake(enemy!.sprite.size.width/2 - (enemy!.sprite.size.width * enemy!.sprite.anchorPoint.x), enemy!.sprite.size.height/2 - (enemy!.sprite.size.height * enemy!.sprite.anchorPoint.y))
enemy!.sprite.physicsBody = SKPhysicsBody(rectangleOfSize: enemy!.sprite.size, center: center)
}
}
あなたは説明できますこれを行う?多分これを達成するための別の方法があります。 – Programmer
@Programmer私は、リンク内で行われたことを統一しています。画面の幅を占めるまで、両端の四角形(ゲームオブジェクト)の幅を広げます。 KnightOfDragonのアプローチは、アニメーションの効果を与えるために幅を拡大することでした。私は同じアプローチを使いたいと思っていましたが、私は、このアプローチが複数の色を持つスプライトにも問題があることに気がついたので、別のアプローチに慣れています。例えば、チェックされたブロックは良く見えません同様の方法で引き伸ばす)。これが私が達成しようとしていることのよりよい考えを与えることを願っています。 – NSSwift
あなたは私の答えの一つにコメントをしました。それが私がここに来る方法です。あなたが片面だけを拡大すると、それは良く見えません。だから私はあなたがこれをしたい理由を尋ねた。 KnightOfDragonのアプローチについては、あなたがスケーリングを実行した場所のYouTubeのビデオとタイムラインを持っているなら、私は他の答えのコードでそれを行うことができるかどうかを見ていきます。私はスケーリング以外の何かがあるかどうかを見るためにこれを視覚化する必要があります。 – Programmer