2016-10-21 11 views
0

私はIOSゲームを開発する方法を学ぼうとしていますが、私はちょうどその理由を知ることができません。なぜなら、SKSPriteNodeのチュートリアルsetScale(0.5)の大半は、SpriteKitでスケールする必要がある理由を説明できる人はいますか?

しかし、私はスケーリングがなぜ起こっているのか分かりません。私が最初に欲しいものをスケールダウンしないでください。そしてそれがデバイスごとにどのように影響しますか? 私はそれをたくさん見ていますが、それを理解することはできません。

は、ありがとう エレズ

答えて

3

スケールはいくつかの点で便利です。単純なケースでは、既存の資産とは異なるサイズが必要です。たとえば、既存の資産のサムネイルが必要だとします。そのアセットのバージョンを小さくする代わりに、スケールを縮小することができます。一般的には、スケールアップとスケールアップが必要です。しかし、スケールアップは特定の時間に機能することができます。

さらに複雑なケースです。アニメーションまたは特殊効果。ほとんどの人はおそらくフリップブックスタイルのアニメーションを使用していますが、これをスケールと混合するとメリットがあります。跳ねるボールを取る。ボールがバウンスすると、ボールが圧縮されます(スケールY)。アートワークとして表現することも、スケールを使用することもできます。ある地域から敵を "飛び出す"ようにすることもできます。あなたは彼を非常に小さく、茂みの後ろにすることでこれを行うことができます。彼が「飛び降りている」ので、彼を100%(あるいはそれ以上)スケールアップしています。

これはスケールの有用性のほんの数例です。

0

setScale関数はノードのxScaleyScaleプロパティを設定します。

xScaleプロパティは、ノードの幅とその子孫のすべての幅をスケーリングします。スケール値は、ノードのフレームの計算方法、ヒットテスト領域、描画方法、およびその他の同様の特性に影響します。デフォルト値は1.0です。

yScaleプロパティは、ノードとその子孫の高さをスケーリングします。スケール値は、ノードのフレームの計算方法、ヒットテスト領域、描画方法、およびその他の同様の特性に影響します。デフォルト値は1.0です。

Appleからの参照documentation

+0

私はマニュアルを読んできましたが、あなたの正直な答えをありがとう、それでも私の質問に答えていない、なぜ正確なサイズで常に1.0を使用しないでください、大きな画像をし、 10x – Erez

+0

@ Erez、 "スケール値は、ノードのフレームの計算方法、ヒットテスト領域、描画方法、その他の同様の特性に影響します。 0.5に設定すると半分のテスト領域、半分のヒットテストなどになります。スプライトとsetValueを0.5と1に、もう1つを1.0に作成すると、それが表示されます。 –

+2

Rashwan:私は彼がチュートリアルや設定のスケールを間違った方法で使った古い設定を見ていると思います。 @ Erez、チュートリアルやテンプレートをデザインした人が正しい方法で使用していなかったので、ビューを使用してゲームシーンをすばやく設定しようとしていましたが、これはデバイスのサイズになってしまい、iphoneとipad。これは、プロジェクトの設定方法ではありません。 – Knight0fDragon

関連する問題