【Swift】SpriteKitの使い方。シーンエディタでノードの回転アクションを設定する。【Swift】SpriteKitの使い方。シーンエディタでノードの回転アクションを設定する。Actionについて説明する。Actionは、シーンに配置したノードを回転させるアクションである。Sceneファイル(以下、SKSファイル)の作り方については次の記事を参照されたし。実際にノードにアクションを追加して回転させてみよう。以降の手順を行う前のXcodeプロジェクトをGitHubに置いたので、試してみる方はご利用下さい。事前準備では、背景と鳥のノードをSKSファイルのシーンに追加しておいた。Action下図赤枠のSKSファイルを選択してシーンエディタを開く。Animate横のボタン(黄緑枠)を押してタイムラインを表示する。Action」を鳥ノードのタイムラインまで運ぶ(紫矢印)。Functionに「Linear」、Degreesに「90」を入力する。以下は実際のプレイ動画。鳥ノードが左回りに90度回転した。https://hajihaji-lemon.com/apli/wp-content/uploads/2016/08/spritekit_rotate_action_movie.mp4アトリビュートインスペクタの内容を説明する。Timeシーンが切り替わったタイミングから何秒後にアクションを実行するかを指定する。Durationアクションの所要時間を指定する。Function回転の速さを以下のの4つから選択する。Mode」の間違いと思われる。加速しながら回転する。減速しながら回転する。前半は加速し、後半は減速しながら回転する。Degrees回転角度を指定する。アンカーポイントを中心に回転し、プラスを指定した場合は左回り、マイナスを指定した場合は右回りになる。⇒「アンカーポイントとは」360度を超えた場合は一周を超えて回る。以下の動画は、Degreesに900度を指定して実行した結果。https://hajihaji-lemon.com/apli/wp-content/uploads/2016/08/spritekit_rotate_action900_movie.mp4このアクションは回転を追加するアクションである。90度回転のアクションを3回実行した場合は270度回転することになる。ちなみに、上記と同じ動きをソースコードで実装するにはTestScene.swiftを以下のコードに変更する。ソースコードの場合は角度にラジアンを指定する。//SKSファイルに配置した鳥ノードを取得する。//2秒待機のアクションを作成する。//回転のアクションを作成する。//一定速度で回転する。//アクションをまとめる。//アクションを実行する。{//SKSファイルに配置した鳥ノードを取得する。SKSpriteNode//2秒待機のアクションを作成する。SKAction.waitForDuration(2.0)//回転のアクションを作成する。2.0)//一定速度で回転する。SKActionTimingMode.Linear//アクションをまとめる。SKAction.sequence([action1,action2])//アクションを実行する。Actionはノードが非回転の状態を0度として、指定角度まで回転するアクションである。同じ角度の回転を連続で実行しても意味はない。以下の動画は、-90度回転のアクションを複数実行した結果。-90度から動かない。https://hajihaji-lemon.com/apli/wp-content/uploads/2016/08/spritekit_rotateto_angle_movie.mp4以下の動画は1回目「-90度」、2回目「90度」のアクションを実行した結果。https://hajihaji-lemon.com/apli/wp-content/uploads/2016/08/spritekit_rotateto_angle2_movie.mp4ソースコードで実装する場合は、先ほどのソースコードのアクション作成箇所を以下のように変更する。Swift//回転のアクションを作成する。2.0)123//回転のアクションを作成する。【Swift】SpriteKitの使い方。シーンを重ねて表示する。...【Swift】SpriteKitの使い方。Transitionを利用してシーンの切り替えを格好良くする。...【Swift】SpriteKitの使い方。...【Swift】SpriteKitの使い方。竜巻に吹き飛ばされたかのように物理ボディを加速させる。コメントをキャンセルメールアドレスが公開されることはありません。