提供: Japanese Scratch-Wiki

(関連項目)
 
(3人の利用者による、間の17版が非表示)
1行目: 1行目:
{{ひらがなヘッダ}}{{注目の記事|2018年1月}}{{リリース前の情報}}{{外部リンク}}[[ファイル:Screenshot-2018-5-27 Scratch 3 0 GUI.png|thumb|right|360px|Scratch 3.0のプロトタイプ(5月27日現在)]][[ファイル:Screenshot 2018-07-15 Scratch 3 0 GUI.png|thumb|right|360px|Scratch 3.0のプロトタイプ(7月15日現在)]]
+
{{ひらがなヘッダ}}{{注目の記事|2018年1月}}{{外部リンク}}[[ファイル:Scratch 3.0 20181231.png|thumb|right|360px|Scratch 3.0のプロトタイプ(12月31日現在)]][[ファイル:Scratch 3.0 2019-08-14.png|thumb|right|360px|Scratch 3.0(2019年8月14日現在)]]
Scratch 3.0は[[Scratch 2.0]]の次のバージョンと発表されている[[Scratch]]である。GoogleはScratchと提携し、Google Blocklyのライブラリを元にしたScratch Blocksが使われる<ref name="abee-post">[[scratch:discuss/post/2353116|https://scratch.mit.edu/discuss/post/2353116/]]</ref>。Scratch 3.0では、新たにScratchJr風のブロックの水平接続が導入される<ref name="dev">[[scratch:developers|https://scratch.mit.edu/developers]]</ref>。
+
Scratch 3.0は[[Scratch 2.0]]の次のバージョンである。GoogleはScratchと提携し、Google Blocklyのライブラリを元にしたScratch Blocksが使われる<ref name="abee-post">[[scratch:discuss/post/2353116|https://scratch.mit.edu/discuss/post/2353116/]]</ref>。Scratch 3.0のブロック水平接続は計画になっていたが、破棄された。
  
Scratch 3.0のプロトタイプは、[https://llk.github.io/scratch-gui/ GitHub][https://preview.scratch.mit.edu/ ここ]からテストできる。ベータ版は2018年8月にhttps://beta.scratch.mit.eduにて、正式版は2019年1月2日リリースされる予定。<ref name="june18">https://medium.com/scratchteam-blog/3-things-to-know-about-scratch-3-0-18ee2f564278</ref>現在正式名称は決まっていないが、[[Scratchチーム]]の{{@|thisandagain}}さんは、Scratch 3.0となると推測している<ref>[[scratch:users/thisandagain/#comments-23456121|https://scratch.mit.edu/users/thisandagain/#comments-23456121]]</ref>。
+
Scratch 3.0のプロトタイプは、[https://llk.github.io/scratch-gui/ GitHub]、以前は[https://beta.scratch.mit.edu/ ここ]からテストできた。ベータ版は2018年8月にhttps://beta.scratch.mit.eduにて、正式版は2019年1月2日リリースされた。<ref name="june18">https://medium.com/scratchteam-blog/3-things-to-know-about-scratch-3-0-18ee2f564278</ref>
  
Scratch 3.0は最新のHTML、CSS、JavaScriptのセットであるHTML5で記述される。Scratch 3.0は、WebGL<ref>[[scratch:users/thisandagain/#comments-25452703|https://scratch.mit.edu/users/thisandagain/#comments-254503]]</ref>、Web Workers、Web AudioなどのJavaScriptライブラリが使用される<ref name="ernieparke-post">[[scratch:discuss/post/2359038/|https://scratch.mit.edu/discuss/post/2359038/]]</ref>。JavaScriptはほとんどのブラウザに対応し、WebGLは速度に優れているため採用された。また、Adobe Flashと異なり、JavaScriptはネイティブで、実行時に拡張機能は必要ない。対応されるブラウザはChrome, Edge, Firefox, Safariであり、Internet Explorerはサポートされない<ref name="preview-faq" />。また、クラッシュ報告により、Opera、Vivaldi、Silkもブロックされる。<ref>https://github.com/LLK/scratch-gui/issues/1460</ref>
+
Scratch 3.0は最新のHTML、CSS、JavaScriptのセットであるHTML5で記述される。Scratch 3.0は、WebGL<ref>[[scratch:users/thisandagain/#comments-25452703|https://scratch.mit.edu/users/thisandagain/#comments-254503]]</ref>、Web Workers、Web AudioなどのJavaScriptライブラリが使用される<ref name="ernieparke-post">[[scratch:discuss/post/2359038/|https://scratch.mit.edu/discuss/post/2359038/]]</ref>。JavaScriptはほとんどのブラウザに対応し、WebGLは速度に優れているため採用された。また、Adobe Flashと異なり、JavaScriptはネイティブで、実行時にブラウザの拡張機能は必要ない。動作推奨環境のブラウザはChrome, Edge, Firefox, Safariであり、Internet Explorerはサポートされない<ref name="preview-faq" />。また、クラッシュ報告により、Opera、Silkはブロックされた<ref>https://github.com/LLK/scratch-gui/issues/1460</ref>が、現在は場合による。
  
 
Scratch 3.0は、新しくエディターとインタプリタを実装する。[[Scratch 1.4]]までは、Smalltalkでプロジェクトは実行され、オンラインではJavaプレーヤーが使われた。2011年からは、オプションでFlashプレーヤーが使用できた。Scratch 2.0以降は、オンライン・オフライン両方でFlashを使用している。また代替手段として、オープンソースのHTML5プレーヤー、[[Phosphorusプレーヤー]]などがある<ref>[[scratch:discuss/post/2353123|https://scratch.mit.edu/discuss/post/2353123/]]</ref>。
 
Scratch 3.0は、新しくエディターとインタプリタを実装する。[[Scratch 1.4]]までは、Smalltalkでプロジェクトは実行され、オンラインではJavaプレーヤーが使われた。2011年からは、オプションでFlashプレーヤーが使用できた。Scratch 2.0以降は、オンライン・オフライン両方でFlashを使用している。また代替手段として、オープンソースのHTML5プレーヤー、[[Phosphorusプレーヤー]]などがある<ref>[[scratch:discuss/post/2353123|https://scratch.mit.edu/discuss/post/2353123/]]</ref>。
11行目: 11行目:
  
 
== 早期のリリース ==
 
== 早期のリリース ==
[[ファイル:ブロックの水平接続.jpg|thumb|right|200px|水平接続のプロトタイプ。中ではLEGO WeDoが動作している。]]Scratch 3.0の最初のプロトタイプは、Google's Youth I/Oの参加者に提供された。そこでは、ScratchをLEGO WeDo 2.0と連携させていた<ref>https://medium.com/scratchfoundation-blog/the-next-generation-of-scratch-d83426eb9ca9</ref>。
+
Scratch 3.0の最初のプロトタイプは、Google's Youth I/Oの参加者に提供された。そこでは、ScratchをLEGO WeDo 2.0と連携させていた<ref>https://medium.com/scratchfoundation-blog/the-next-generation-of-scratch-d83426eb9ca9</ref>。
  
 
2016年のScratchカンファレンスで、「次のScratchは?」というパネルで、Scratch 3.0が議論された。そこには、Scratch 3.0にbarebones VMとオーディオエンジンが搭載されると記載された。
 
2016年のScratchカンファレンスで、「次のScratchは?」というパネルで、Scratch 3.0が議論された。そこには、Scratch 3.0にbarebones VMとオーディオエンジンが搭載されると記載された。
  
 
== 計画 ==
 
== 計画 ==
2016年のScratchカンファレンスでは、かんたんな計画が公表された。Scratchチームは、数週間のうちにレンダリングエンジンを追加し、2018年8月1日にベータ版<ref>[[scratch:discuss/post/3189336/|お知らせ・ニュースのabeeさんのポスト]]</ref>、また、2019年1月2日に正式版を利用可能にする予定である。<ref name="june18" />そのときには世界各国の言語がサポートされる<ref name="preview-faq" />。
+
2016年のScratchカンファレンスでは、かんたんな計画が公表された。Scratchチームは、数週間のうちにレンダリングエンジンを追加し、2018年8月1日にベータ版<ref>[[scratch:discuss/post/3189336/|お知らせ・ニュースのabeeさんのポスト]]</ref>、また、2019年1月2日に正式版を利用可能にする予定であり、ベータ版、正式版は予定通り公開された。<ref name="june18" />そのときには世界各国の言語がサポートされる<ref name="preview-faq" />。
  
== 予定されている機能 ==
+
== 予定にあった機能 ==
Scratch 3.0に予定されている機能は次の通り:
+
Scratch 3.0に予定されている機能は次の通り。なお、実装されたものに★をつけている:
 
;追加
 
;追加
 
<!-- * [[値ブロック]]の定義<ref name="rejectsug">[[scratch:discuss/post/26545|https://scratch.mit.edu/discuss/post/26545/]]</ref> -->
 
<!-- * [[値ブロック]]の定義<ref name="rejectsug">[[scratch:discuss/post/26545|https://scratch.mit.edu/discuss/post/26545/]]</ref> -->
* iOSやAndroidでのエディターのサポート<ref name="ernieparke-post" /><ref name="rejectsug">[[scratch:discuss/post/26545|https://scratch.mit.edu/discuss/post/26545/]]</ref><ref name="june18" /> ただし、スマートフォンでは閲覧のみできる予定。
+
* ★iOSやAndroidでのエディターのサポート<ref name="ernieparke-post" /><ref name="rejectsug">[[scratch:discuss/post/26545|https://scratch.mit.edu/discuss/post/26545/]]</ref><ref name="june18" /> ただし、スマートフォンでは閲覧のみできる予定。
 
<!-- * 60FPSでの実行<ref>https://github.com/LLK/scratch-vm/commit/0ae0ea5f22deeadb84fdeb0a746e3879625e4baf</ref><ref>[[scratch:discuss/post/2188059/|https://scratch.mit.edu/discuss/post/2188059/]]</ref>(この2つは互換性の問題のため検討中) -->
 
<!-- * 60FPSでの実行<ref>https://github.com/LLK/scratch-vm/commit/0ae0ea5f22deeadb84fdeb0a746e3879625e4baf</ref><ref>[[scratch:discuss/post/2188059/|https://scratch.mit.edu/discuss/post/2188059/]]</ref>(この2つは互換性の問題のため検討中) -->
 
<!-- * ScratchJrのような、ブロックの水平接続(コンパクトで、モバイルでの使用に適している)<ref name="dev" /> -->
 
<!-- * ScratchJrのような、ブロックの水平接続(コンパクトで、モバイルでの使用に適している)<ref name="dev" /> -->
* 「ペンの透明度を () にする」ブロック<ref>https://github.com/LLK/scratch-vm/issues/412#issuecomment-280118002</ref><ref name="preview-faq">https://scratch.mit.edu/preview-faq</ref><ref name="preview-faq" />
+
* ★「ペンの透明度を () にする」ブロック<ref>https://github.com/LLK/scratch-vm/issues/412#issuecomment-280118002</ref><ref name="preview-faq">https://scratch.mit.edu/preview-faq</ref><ref name="preview-faq" />
* 音の効果ブロック
+
* ★音の効果ブロック
* [[スプライト]]・音・[[背景]]の追加<ref name="preview-faq" /><ref name="june18" />
+
* [[スプライト]]・音・[[背景]]の追加<ref name="preview-faq" /><ref name="june18" />
* ペイントエディターのベクターモードでも使える消しゴム<ref name="preview-faq" />
+
* ★ペイントエディターのベクターモードでも使える消しゴム<ref name="preview-faq" />
* サウンドエディターの新しいエフェクト<ref name="preview-faq" />
+
* ★サウンドエディターの新しいエフェクト<ref name="preview-faq" />
* 文字列を扱うための新しいブロック<ref name="preview-faq" />
+
* ★文字列を扱うための新しいブロック<ref name="preview-faq" />
* [[() 秒でx座標を () に、y座標を () に変える (ブロック)|() 秒でx座標を () に、y座標を () に変える]]のスプライト版<ref name="preview-faq" />
+
* [[() 秒でx座標を () に、y座標を () に変える (ブロック)|() 秒でx座標を () に、y座標を () に変える]]のスプライト版<ref name="preview-faq" />
* リスト中の指定項目のインデックスを返す値ブロック<ref>https://github.com/LLK/scratch-blocks/pull/1425</ref>
+
* ★リスト中の指定項目のインデックスを返す値ブロック<ref>https://github.com/LLK/scratch-blocks/pull/1425</ref>
* 一時停止<ref>https://scratch.mit.edu/users/paddle2see/#comments-45539891</ref>
+
<!-- * 一時停止<ref>https://scratch.mit.edu/users/paddle2see/#comments-45539891</ref> -->
* micro:bitのサポート<ref>https://github.com/LLK/scratch-vm/pull/1113</ref><ref name="june18" />
+
* ★[[micro:bit]]のサポート<ref>https://github.com/LLK/scratch-vm/pull/1113</ref><ref name="june18" />
* Google翻訳拡張機能<ref name="june18" />
+
* ★[[翻訳拡張機能]]<ref name="june18" />
* 右から左に読む言語のサポート<ref name="preview-faq" />
+
* ★右から左に読む言語のサポート<ref name="preview-faq" />
* ペイントエディターで、最前面/最背面に移動する機能<ref name="preview-faq" />
+
* ★ペイントエディターで、最前面/最背面に移動する機能<ref name="preview-faq" />
* ベクターの点を滑らかにする設定<ref name="preview-faq" />
+
* ★ベクターの点を滑らかにする設定<ref name="preview-faq" />
* 新しいフォント(ピクセル、朝鮮語、日本語、中国語)<ref>https://github.com/LLK/scratch-paint/issues/371</ref>
+
* ★[[ペイントエディター (3.0)#テキスト|新しいフォント]](ピクセル、朝鮮語、日本語、中国語)<ref>https://github.com/LLK/scratch-paint/issues/371</ref>
* LEGO マインドストーム EV3拡張機能<ref name="preview-faq" />
+
* ★[[LEGO マインドストーム EV3拡張機能]]<ref name="preview-faq" />
* ライブラリーの検索<ref>https://github.com/LLK/scratch-gui/issues/1254</ref>
+
* ★ライブラリーの検索<ref>https://github.com/LLK/scratch-gui/issues/1254</ref>
* コスチューム名の取得を含んだ、[[コスチューム番号 (ブロック)|コスチューム番号]]ブロックの多機能化<ref>https://github.com/LLK/scratch-blocks/pull/1332</ref>
+
* ★コスチューム名の取得を含んだ、[[コスチューム番号 (ブロック)|コスチューム番号]]ブロックの多機能化<ref>https://github.com/LLK/scratch-blocks/pull/1332</ref>
* レイヤーの操作ブロックのオプション<ref>https://github.com/LLK/scratch-blocks/pull/1326</ref>
+
* ★レイヤーの操作ブロックのオプション<ref>https://github.com/LLK/scratch-blocks/pull/1326</ref>
 +
* ★[[音声合成拡張機能]]<ref>https://github.com/LLK/scratch-gui/pull/3423</ref>
 +
* ★リストの改名<ref name="vm-wiki">https://github.com/LLK/scratch-vm/wiki/Compatibility</ref>
 +
* ★[[Makey Makey拡張機能]]<ref>https://github.com/LLK/scratch-gui/pull/3908</ref>
 +
* ★新しいチュートリアル
 +
* iPad用オフラインエディター<ref>[[scratch:users/thisandagain/#comments-52464352|この発言]]</ref>
  
 
;変更
 
;変更
 
<!-- * 16:9の高品質なプレーヤー<ref>[[scratch:discuss/post/2090971|https://scratch.mit.edu/discuss/post/2090971/]]</ref> -->
 
<!-- * 16:9の高品質なプレーヤー<ref>[[scratch:discuss/post/2090971|https://scratch.mit.edu/discuss/post/2090971/]]</ref> -->
* ペンブロックの拡張機能化<ref>https://github.com/LLK/scratch-vm/issues/736</ref>
+
* ★ペンブロックの拡張機能化<ref>https://github.com/LLK/scratch-vm/issues/736</ref>
* [[ブロック]]の広幅化(これはタブレットでのドラッグアンドドロップを容易にするため)<ref name="preview-faq" />
+
* [[ブロック]]の広幅化(これはタブレットでのドラッグアンドドロップを容易にするため)<ref name="preview-faq" />
* ステージが右に移動<ref name="preview-faq" />
+
* ★ステージが右に移動<ref name="preview-faq" />
* ブロックパレットがカテゴリーを越えてスクロールできるようになった<ref name="preview-faq" />
+
* ★ブロックパレットがカテゴリーを越えてスクロールできるようになった<ref name="preview-faq" />
* [[() 度に向ける (ブロック)|() 度に向ける]]ブロックの入力方法を簡単にした<ref name="preview-faq" />
+
* [[() 度に向ける (ブロック)|() 度に向ける]]ブロックの入力方法を簡単にした<ref name="preview-faq" />
* プロジェクトにデフォルトで変数を含める<ref name="preview-faq" /><ref>https://github.com/LLK/scratch-gui/issues/1162</ref>
+
* ★プロジェクトにデフォルトで変数を含める<ref name="preview-faq" /><ref>https://github.com/LLK/scratch-gui/issues/1162</ref>
* カラーピッカーのオプション<ref name="preview-faq" />
+
* ★カラーピッカーのオプション<ref name="preview-faq" />
* LEGO WeDo 1.0のサポート打ち切り<ref name="picoboard">https://github.com/LLK/scratch-gui/issues/1549</ref>
+
* ★LEGO WeDo 1.0のサポート打ち切り<ref name="picoboard">https://github.com/LLK/scratch-gui/issues/1549</ref>
* PicoBoardのサポート打ち切り<ref name="picoboard" />
+
* ★PicoBoardのサポート打ち切り<ref name="picoboard" />
* ブロックの改名([[Scratch 3.0で改名されるブロック一覧]])
+
* ★ブロックの改名([[Scratch 3.0で改名されるブロック一覧]])
* ブロックの統合([[Scratch 3.0で統合または分離されるブロック一覧]])
+
* ★ブロックの統合([[Scratch 3.0で統合または分離されるブロック一覧]])
* 変数を削除したとき、使用部分も削除されるようになる
+
* ★変数を削除したとき、使用部分も削除されるようになる
 +
* ★リスト項目に20万の制限<ref>https://github.com/LLK/scratch-vm/blob/fd5e178d3b4411893e155f2d7787063117496de3/src/blocks/scratch3_data.js#L253</ref>
 +
* ★<sb>[変数 v]を(文字列)ずつ変える</sb>で、変数は0になる<ref name="vm-wiki" />
 +
* ★変数・リストの名前の重複の許可<ref name="vm-wiki" />
 +
* ★() に触れたで自分自身を選択した場合、クローンに触れたときのみ反応する<ref name="vm-wiki" />
 +
* 閲覧数は100以上は100+になる<ref>https://github.com/LLK/scratch-www/issues/1858#issuecomment-444865190</ref>→廃止。
 +
* ★埋め込みモードの自動再生廃止<ref>https://github.com/LLK/scratch-gui/pull/3946</ref>
 +
* ★[[ステージモニター]]が常にスプライトの上になる<ref name="vm-wiki" />
 +
* ★[[クラウドデータ]]文字数制限が256文字になる<ref>[[scratch:users/thisandagain/#comments-52465689|この発言]]</ref>
  
===拡張===
+
===拡張機能===
Scratch 3.0には、Scratchのエディタを幅広いデバイスやサービスに接続できるように設計した新しい拡張システムが含まれている。2018年後半に仕様とガイドラインが示され、[[Scratch Team]]に拡張機能を提出すると拡張ライブラリとして検討される<ref name="preview-faq" />
+
Scratch 3.0には、Scratchのエディタを幅広いデバイスやサービスに接続できるように設計した新しい[[拡張機能 (3.0)|拡張機能]]が含まれている。仕様は公開された。<ref>https://github.com/LLK/scratch-vm/wiki/Scratch-3.0-Extensions-Specification</ref>
  
==1.4 2.0 ScratchX==
+
=== プロトタイプ時に存在した機能 ===
Scratch 3.0のリリース後[[ScratchX]]のサポートは中止され、Scratch 3.0への移行期間が与えられる。Scratch 1.4および2.0はオフラインエディタでは実行可能。2.0のオフラインエディタで作成されたプロジェクトはアップロード可能だが、Scratch 3.0で作成されたものはScratch 2.0では実行できない<ref name="preview-faq" />。なお、1.4, 2.0のオフラインエディタのダウンロードは数年間サポートされる<ref name="preview-faq" />。
+
*[[Some Blocks]]  他の一般的な言語にあるようなブロックを含む拡張機能だった。
 +
 
 +
== Scratch 1.4、2.0、ScratchX ==
 +
Scratch 3.0のリリース後[[ScratchX]]のサポートは中止され、Scratch 3.0への移行期間が与えられる。Scratch 1.4および2.0はオフラインエディターでは実行可能。2.0のオフラインエディタで作成されたプロジェクトはアップロード可能だが、Scratch 3.0で作成されたものはScratch 2.0では実行できない<ref name="preview-faq" />。なお、1.4, 2.0のオフラインエディタのダウンロードは数年間サポートされる<ref name="preview-faq" />。
 +
 
 +
== オープンソースプロジェクト ==
 +
Scratch 3.0は、3項BSDライセンスの基で作られたScratch史上最大のオープンソースプロジェクトであり、多くの非[[Scratchチーム]]メンバーが貢献している。その中には、スライダー変数の範囲設定や保存のショートカットキーなどがある。貢献方法は[[貢献方法 (scratch-gui)|ここ]]にある。
  
 
== 画像 ==
 
== 画像 ==
74行目: 93行目:
 
ファイル:3.0 スプライトライブラリ.PNG|スプライトライブラリ。左上に検索バーがある
 
ファイル:3.0 スプライトライブラリ.PNG|スプライトライブラリ。左上に検索バーがある
 
ファイル:3.0ブロックパレット.PNG|新しくなったブロックパレット
 
ファイル:3.0ブロックパレット.PNG|新しくなったブロックパレット
ファイル:3.0サウンドエディター.PNG|サウンドエディターには、「Robot」などが追加された
+
ファイル:3.0サウンドエディター.PNG|サウンドエディターには、「ロボット」などが追加された
ファイル:3.0開発者版_ペイントエディター_20171025.png|ペイントエディター
+
ファイル:3.0開発者版_ペイントエディター_20171025.png|古いペイントエディター
 
ファイル:3.0開発者版 拡張機能.png|ペンは拡張機能になった
 
ファイル:3.0開発者版 拡張機能.png|ペンは拡張機能になった
 
ファイル:3.0開発者版 「言う」ブロック.png|「言う」ブロック
 
ファイル:3.0開発者版 「言う」ブロック.png|「言う」ブロック
84行目: 103行目:
  
 
==関連項目==
 
==関連項目==
*[[Scratch 3.0 ベータFAQ]]
+
* [[Scratch 3.0 ベータFAQ]]
  
 
== 出典 ==
 
== 出典 ==
 
<references />
 
<references />
[[カテゴリ:Scratch 3.0]][[カテゴリ:Scratchのバージョン]]
+
{{Scratch Versions}}
 +
{{GitHub|scratch-gui|/}}
 +
{{GitHub|scratch-vm|/}}
 +
{{GitHub|scratch-blocks|/}}
 +
 
 +
[[カテゴリ:Scratchプログラム]]
 +
[[カテゴリ:Scratchのバージョン]]
  
{{Scratch Versions}}
 
 
[[de:Scratch 3.0]]
 
[[de:Scratch 3.0]]
 
[[en:Scratch 3.0]]
 
[[en:Scratch 3.0]]
 +
[[fr:Scratch 3.0]]
 
[[nl:Scratch3.0]]
 
[[nl:Scratch3.0]]
[[fr:Scratch 3.0]]
 
 
[[ru:Скретч 3.0]]
 
[[ru:Скретч 3.0]]

2019年9月1日 (日) 06:28時点における最新版

このきじは ひらがなのページがあります。ひらがなでよむ
注目の記事.png この記事は2018年1月の注目の記事です。
SandCastleIcon.png このページには、ScratchのWebサイトまたはWikipedia,Scratch Wiki以外へのリンクがあります。 他のサイトの安全を保証することはできないため、インターネットを使用する際は常に安全を忘れないようにしてください。
Scratch 3.0のプロトタイプ(12月31日現在)
Scratch 3.0(2019年8月14日現在)

Scratch 3.0はScratch 2.0の次のバージョンである。GoogleはScratchと提携し、Google Blocklyのライブラリを元にしたScratch Blocksが使われる[1]。Scratch 3.0のブロック水平接続は計画になっていたが、破棄された。

Scratch 3.0のプロトタイプは、GitHub、以前はここからテストできた。ベータ版は2018年8月にhttps://beta.scratch.mit.eduにて、正式版は2019年1月2日リリースされた。[2]

Scratch 3.0は最新のHTML、CSS、JavaScriptのセットであるHTML5で記述される。Scratch 3.0は、WebGL[3]、Web Workers、Web AudioなどのJavaScriptライブラリが使用される[4]。JavaScriptはほとんどのブラウザに対応し、WebGLは速度に優れているため採用された。また、Adobe Flashと異なり、JavaScriptはネイティブで、実行時にブラウザの拡張機能は必要ない。動作推奨環境のブラウザはChrome, Edge, Firefox, Safariであり、Internet Explorerはサポートされない[5]。また、クラッシュ報告により、Opera、Silkはブロックされた[6]が、現在は場合による。

Scratch 3.0は、新しくエディターとインタプリタを実装する。Scratch 1.4までは、Smalltalkでプロジェクトは実行され、オンラインではJavaプレーヤーが使われた。2011年からは、オプションでFlashプレーヤーが使用できた。Scratch 2.0以降は、オンライン・オフライン両方でFlashを使用している。また代替手段として、オープンソースのHTML5プレーヤー、Phosphorusプレーヤーなどがある[7]

サウンドレコーダー

早期のリリース

Scratch 3.0の最初のプロトタイプは、Google's Youth I/Oの参加者に提供された。そこでは、ScratchをLEGO WeDo 2.0と連携させていた[8]

2016年のScratchカンファレンスで、「次のScratchは?」というパネルで、Scratch 3.0が議論された。そこには、Scratch 3.0にbarebones VMとオーディオエンジンが搭載されると記載された。

計画

2016年のScratchカンファレンスでは、かんたんな計画が公表された。Scratchチームは、数週間のうちにレンダリングエンジンを追加し、2018年8月1日にベータ版[9]、また、2019年1月2日に正式版を利用可能にする予定であり、ベータ版、正式版は予定通り公開された。[2]そのときには世界各国の言語がサポートされる[5]

予定にあった機能

Scratch 3.0に予定されている機能は次の通り。なお、実装されたものに★をつけている:

追加
変更
  • ★ペンブロックの拡張機能化[22]
  • ブロックの広幅化(これはタブレットでのドラッグアンドドロップを容易にするため)[5]
  • ★ステージが右に移動[5]
  • ★ブロックパレットがカテゴリーを越えてスクロールできるようになった[5]
  • () 度に向けるブロックの入力方法を簡単にした[5]
  • ★プロジェクトにデフォルトで変数を含める[5][23]
  • ★カラーピッカーのオプション[5]
  • ★LEGO WeDo 1.0のサポート打ち切り[24]
  • ★PicoBoardのサポート打ち切り[24]
  • ★ブロックの改名(Scratch 3.0で改名されるブロック一覧)
  • ★ブロックの統合(Scratch 3.0で統合または分離されるブロック一覧)
  • ★変数を削除したとき、使用部分も削除されるようになる
  • ★リスト項目に20万の制限[25]
  • [変数 v]を(文字列)ずつ変えるで、変数は0になる[19]
  • ★変数・リストの名前の重複の許可[19]
  • ★() に触れたで自分自身を選択した場合、クローンに触れたときのみ反応する[19]
  • 閲覧数は100以上は100+になる[26]→廃止。
  • ★埋め込みモードの自動再生廃止[27]
  • ステージモニターが常にスプライトの上になる[19]
  • クラウドデータ文字数制限が256文字になる[28]

拡張機能

Scratch 3.0には、Scratchのエディタを幅広いデバイスやサービスに接続できるように設計した新しい拡張機能が含まれている。仕様は公開された。[29]

プロトタイプ時に存在した機能

  • Some Blocks 他の一般的な言語にあるようなブロックを含む拡張機能だった。

Scratch 1.4、2.0、ScratchX

Scratch 3.0のリリース後ScratchXのサポートは中止され、Scratch 3.0への移行期間が与えられる。Scratch 1.4および2.0はオフラインエディターでは実行可能。2.0のオフラインエディタで作成されたプロジェクトはアップロード可能だが、Scratch 3.0で作成されたものはScratch 2.0では実行できない[5]。なお、1.4, 2.0のオフラインエディタのダウンロードは数年間サポートされる[5]

オープンソースプロジェクト

Scratch 3.0は、3項BSDライセンスの基で作られたScratch史上最大のオープンソースプロジェクトであり、多くの非Scratchチームメンバーが貢献している。その中には、スライダー変数の範囲設定や保存のショートカットキーなどがある。貢献方法はここにある。

画像

関連項目

出典

  1. https://scratch.mit.edu/discuss/post/2353116/
  2. 2.0 2.1 2.2 2.3 2.4 2.5 https://medium.com/scratchteam-blog/3-things-to-know-about-scratch-3-0-18ee2f564278
  3. https://scratch.mit.edu/users/thisandagain/#comments-254503
  4. 4.0 4.1 https://scratch.mit.edu/discuss/post/2359038/
  5. 5.00 5.01 5.02 5.03 5.04 5.05 5.06 5.07 5.08 5.09 5.10 5.11 5.12 5.13 5.14 5.15 5.16 5.17 5.18 5.19 5.20 https://scratch.mit.edu/preview-faq
  6. https://github.com/LLK/scratch-gui/issues/1460
  7. https://scratch.mit.edu/discuss/post/2353123/
  8. https://medium.com/scratchfoundation-blog/the-next-generation-of-scratch-d83426eb9ca9
  9. お知らせ・ニュースのabeeさんのポスト
  10. https://scratch.mit.edu/discuss/post/26545/
  11. https://github.com/LLK/scratch-vm/issues/412#issuecomment-280118002
  12. https://github.com/LLK/scratch-blocks/pull/1425
  13. https://github.com/LLK/scratch-vm/pull/1113
  14. https://github.com/LLK/scratch-paint/issues/371
  15. https://github.com/LLK/scratch-gui/issues/1254
  16. https://github.com/LLK/scratch-blocks/pull/1332
  17. https://github.com/LLK/scratch-blocks/pull/1326
  18. https://github.com/LLK/scratch-gui/pull/3423
  19. 19.0 19.1 19.2 19.3 19.4 https://github.com/LLK/scratch-vm/wiki/Compatibility
  20. https://github.com/LLK/scratch-gui/pull/3908
  21. この発言
  22. https://github.com/LLK/scratch-vm/issues/736
  23. https://github.com/LLK/scratch-gui/issues/1162
  24. 24.0 24.1 https://github.com/LLK/scratch-gui/issues/1549
  25. https://github.com/LLK/scratch-vm/blob/fd5e178d3b4411893e155f2d7787063117496de3/src/blocks/scratch3_data.js#L253
  26. https://github.com/LLK/scratch-www/issues/1858#issuecomment-444865190
  27. https://github.com/LLK/scratch-gui/pull/3946
  28. この発言
  29. https://github.com/LLK/scratch-vm/wiki/Scratch-3.0-Extensions-Specification