スクラッチコーチキャンプ ゲームクリエイターに、オレはなる!そんなキミを応援(子供も大人も)
  • ALL
  • はじめての方へ
  • スクラッチゲームの作り方

    TurboWarpブロックとは | ターボワープ拡張機能の使い方

    TurboWarpブロックとは | ターボワープ拡張機能の使い方
    この記事は スクラッチコーチで掲載されているオリジナル記事 のバックアップです。
    スターター作品
    なし
    今回の完成サンプル
    なし

    TurboWarpブロックは数あるTurboWarp拡張機能の中でも比較的シンプルな拡張機能だよ。

    数も少ないからTurboWarp拡張機能に慣れるのにちょうどいいかも。

    TurboWarpブロックとは | ターボワープ拡張機能の使い方を語るok-scratch ok-scratch

    u003cpu003e特に記述がない限り、TurboWarpの拡張機能を使った作品はScratchで共有できなくなるから注意。u003c/pu003e

    拡張機能をエディターに表示する方法

    まずは拡張機能をエディターに表示する方法を紹介する。知ってる人はここを飛ばして読んでOK。

    ターボワープエディターを開く

    まずTurboWarpエディターを開く。これはScratchエディターとは違うから、場所がわからない人はここからオープンしてみて。

    ターボワープエディター

    基本的にScratchエディターと似た感じのエディタが開くと思う。TurboWarpはScratchを改造したMODだから、エディターもそっくりなんだ。

    拡張機能の一覧を開く

    エディターの左下にこんなマークがあると思う。

    まぁ赤いだけでScratchエディターと同じだね。

    これをクリックすると一覧が開く。

    TurboWarp拡張機能を見つける

    一覧にはまずScratchの拡張機能が表示されて、少し下にスクロールしないとTurboWarpの拡張機能は見つからない。そこで、上段にある「TurboWarp」というボタンを押してみよう。

    そうするとTurboWarp拡張機能だけが表示されると思う!こんなふうに↓

    うおおお!見たこともない新鮮な拡張機能があるぞー!知的好奇心がウズウズするぞぉ!

    1つ1つシリーズ化してみていきたいと思う。今回の記事では、こちら!

    TurboWarpブロック

    これをクリックしてエディターに拡張機能を追加してみよう!

    追加されたら↓こんな感じに見えるはず。

    準備OK!

    TurboWarpブロックとは | ターボワープ拡張機能の使い方を語るok-scratch ok-scratch

    u003cpu003e僕はエディターをダークモードで使ってるから黒い背景だけど、デフォルトだと白い背景かも。エディターの左上にある「設定」から変えられるよ。u003c/pu003e

    拡張機能の紹介

    いまのところ全部で4ブロックだけ。

    is compiled?

    読み意味解説
    isイズ compiledコンパイルドゥ?プロジェクトがコンパイルされているかどうか調べるScratchで実行しているとコンパイルされてないからFALSE。
    TurboWarpなどで実行しているとコンパイルされているからTRUE。
    TurboWarpブロックとは | ターボワープ拡張機能の使い方を語るok-scratch ok-scratch

    u003cpu003eこのブロックを使っててもScratchで作品を共有できるぞ!u003c/pu003e

    コンパイルというのがそもそも聞き慣れないと思う。

    超カンタンにコンパイルを理解するには、まずコンパイルされてない状態を知るといい。

    カフェでコーヒーとか注文したことある?カフェでコーヒーを飲むシーンを例としてコンパイルについて解説してみる。

    コンパイルされてない状態(Aさん)

    • Aさんはカフェに来ました。
    • Aさんは店員に「コーヒーください」と注文しました。
    • 店員は「ホットですか?アイスですか?」と聞きました。
    • Aさんは「ホットで」と答えました。
    • さらに店員は「サイズはどうしますか?」と聞きました。
    • Aさんは「スモールで」と答えました。
    • すると店員は「あ、ショートでよろしいですか?」とスモールをさりげなく訂正して聞き返しました。
    • Aさんは「あ、それで」と答えました。
    • 店員は「かしこまりました〜」と注文を受け付けました。

    これがコンパイルされてない状態。一つ一つ店員と確認しながら注文するから、少し時間がかかるし、余計な聞き返しなども発生する。

    コンパイルされた状態(Bさん)

    ではコンパイルされた状態も見ていこう。

    • Bさんはカフェに来ました。
    • Bさんは店員に「ホットコーヒーをショートで」と注文しました。
    • 店員は「かしこまりました〜」と注文を受け付けました。

    以上、はや!

    Aさんは1つ1つ確認しながら注文していたのに対して、Bさんは注文をまとめて一気に行った。

    このように、プログラミングの流れを上から1つ1つ確認しながら実行するのではなく、「注文をまとめておく」ことをコンパイルという。(かなり粗い表現だけど、ニュアンスをつかむための例として)

    で、Scratchはプログラムを1つ1つ実行する(インタープリターと呼ばれる)形式になってる。

    一方でTurboWarpはコンパイルで実行するようになってる。

    このことについてはこちらの「ターボワープはなぜ速いのか」という記事でも別のサンプルを使って解説しているからチェックしてみてほしい。

    TurboWarpブロックとは | ターボワープ拡張機能の使い方を語るok-scratch ok-scratch

    u003cpu003eたぶん基本情報処理みたいな資格試験で出題される知識だった気がする。u003c/pu003e

    使いどころ

    「コンパイルされている時は基本的に処理が早いから、すごく重たいロジックを動かして作品のクオリティを上げたい。でもスクラッチでは処理が重すぎてカクカクしちゃうから代わりに軽くて粗い処理を実行したい」って感じで負荷の違う処理を切り分ける時に役立つよ。

    is TurboWarp?

    読み意味解説
    isイズ TurboWarpターボワープ?プロジェクトがターボワープで実行されているかどうか調べるScratchなどで実行しているとFALSE。
    TurboWarpで実行しているいるからTRUE。
    TurboWarpブロックとは | ターボワープ拡張機能の使い方を語るok-scratch ok-scratch

    u003cpu003eこのブロックを使っててもScratchで作品を共有できるぞ!u003c/pu003e

    さっきのブロックに似ているけど微妙に違う。

    決定的に違うのはForkphorusフォークフォラスなどTurboWarp以外のScratchMODを判別したい時。

    ForkphorusもTurboWarpと同じように、ScratchをベースにしたMODの1つで、コンパイルすることScratchを高速に処理できるようになっている。

    Forkphorusは「is compiled?」はTRUEになるけど、TurboWarpではないので「is TurboWarp」はFALSEになる。

    環境is compiled?is TurboWarp?
    Scratchxx
    TurboWarpoo
    Forkphorusox

    使いどころ

    TurboWarp固有の機能を使う前提の機能がある場合はこのブロックが役にたつ。たとえばゲームパッドを利用した操作を選択できるとか。

    最後に押されたキー

    これはその名の通り、キーボードのどのキーが最後に押されたかを格納してくれる変数的なブロック。

    たとえば「a」を押したら↓

    大文字と小文字も分けてくれる。「N」を押したら↓

    特殊なキーも格納してくれる。「エンター」を押したら↓

    「シフト」を押したら↓

    すべての特殊キーを保持してくれるわけではないけど、十分かなと思う。

    使いどころ

    押されたキーを条件ブロックで調べて処理を切り分けるといったことができるね。Scratchだとイベントブロックで「⚪︎キーが押された時」でも代用できるけど、TurboWarpブロックなら処理の途中で条件ブロックの条件として使える。

    変数ブロックと同じだからコスチューム名を、最後に押されたキーによって変えるようなロジックも作れそう。

    マウスの⚪︎が押された

    選択肢を見るとわかるように、マウスで左クリックされたのか、右クリックされたのか、ホイール(マウスにあれば)が回されたのかが分かるようになる。

    なかなかに細かいことができそう。

    スクラッチだと左クリックは取れるけど、右やホイールは無理だから、そこらへんを使う作品なら魅力的なブロック。

    使いどころ

    たとえば左クリックなら普通に選択や決定、攻撃とかジャンプとか調べる動作が実行されるけど、右クリックが押された場合は「メニュー」が表示されるような挙動を作ることができる。

    ホイールが押されたら画面を素早くスクロールさせることができるといった機能も作れそう!

    この記事への質問やコメントをどうぞ

    ただいま実験的に質問を受け付けています。

    コメントは受け付けていません。

    スパム防止のため、 質問をするにはログインが必要 です。ログインはスクラッチのアカウントがあれば誰でもできます。

    ブクマよろしくお願いします!という口コミを寄せてくれた方 ブクマよろしくお願いします!
    どんどん追記・更新していくので、ブックマークやシェアよろしくお願いします!