拙著「Scratchで楽しく学ぶ アート&サイエンス」で紹介しているプロジェクトが、Scratch 3.0でもちゃんと動くかどうかを検証しました。
日経BP社
売り上げランキング: 87,190
結論から言うと、書籍に載っている説明通りにプロジェクトを作って、問題なく動くことを確認しました。
ただいくつか3.0ならではの注意点があったので、それらをコメントとして追加して、書籍に載っているプロジェクトの完成例をScratchのスタジオとして公開しました。
» Scratchスタジオ - Scratchで楽しく学ぶアート&サイエンス(3.0対応)
各プロジェクトのリミックスは大歓迎、質問や、間違いの指摘はスタジオのコメント欄に残してくれても良いですし、Twitter ID: @jishiha でも受け付けています。
動作確認をしているときに気づいたScratch 2.0と3.0との違いとともにそれら注意点を紹介したいと思います。
塗りつぶしの色は、カラーパレットで指定できなくなった
コスチュームを塗りつぶすとき、Scratch 2.0では以下のようなカラーパレットで色を指定していた。
Scratch 3.0では代わりに色、鮮やかさ、明るさをスライダーで選択できるようになった。
細かく色を指定できるようにはなったのだが、色をあたり判定などに使うときにスプライトをまたがって同じ色を指定する、という場合にパラメーターの各値を正確に合わせる必要があるのでややとまどう。例えば赤色ならば、色:0、鮮やかさ:100、明るさ:100 のように各パラメーターの数値をそろえる必要がある。
色を正確に再現できるように、各プロジェクトで色の指定が必要な箇所では以下のようにコメントで説明を追加しておいた。
直線は、ビットマップに変換しないと塗りつぶせない
Scratch 3.0では、ビットマップに変換しないと直線や枠線を塗りつぶすことができない。これはScratch 2.0と挙動が異なる。直線や枠線自体の色を指定すれば、色を変えることはできるので、問題ないように思えるのだが、Scratchでは色を当たり判定に使うことが多いため、画面上にすでにある色をスポイトで吸って同じ色で塗りつぶしたいということがよくある。
たとえば、以下のコスチュームは直線部分をほかのコスチュームで使っているまったく同じ黄色に塗りつぶしたい、というケースでは少し困ってしまう。
三角関数の演算プロックに違和感
sin 60° や cos 120° を演算ブロックで表現するとき、Scratch 3.0は以下のように「60のsin」「120のcos」となるのが違和感を感じる。
Scratch 2.0では以下の通り読みやすい。
もとの英語での表現が「sin of 60」「cos of 120」と変わったことに日本語訳もひっぱられた形なのでいたしかたないように思えるが。。
数値しか受け付けないはずの入力欄に日本語が入力できてしまう
Scratch 3.0では、「○歩動かす」や「○度回す」など、数値しか受け付けないはずの入力欄に日本語が入力できてしまう。
最後の「○度に向ける」だけは、日本語の入力を受け付けず、しかも入力欄が赤色にハイライトされてミスタイプしたことが一目瞭然なので、可能ならこのUIに統一してほしい。
上記「10歩動かす」は、10が全角数字のためブロックは動作しない。日本語入力をオフにし忘れて数字を全角のまま入力してしまうというミスは良く起こるので、結構影響が大きい気がする。
Scratch 3.0のソースコードを管理しているGitHubのレポジトリのIssueに追加しておいた。
OpenなIssueはすでに200を超えていて、すぐに対応してもらえるのかはわからないのだが、もしこのIssueは影響が大きくてマズいと思われる方は、このIssueに+1のリアクションをおこなってほしい。もしかすると、賛同者が多いということが開発者側に伝わり優先度が上がるかもしれない。
以上、動作確認中に気づいたScratch 2.0と3.0との違いを紹介しました。2.0で作った自分のプロジェクトを3.0で動かすときの参考になればと思います。
2019/01/07 09:00:00