Discuss Scratch
- Discussion Forums
- » 日本語
- » Scratch への提案
- gccxnondx
-
Scratcher
100+ posts
Scratch への提案
ブロック定義というものが現在もあります。
それを活用すれば、一文字づつ言うに関しては重くすることがなく、作れると思います。
真偽数に関しては、そんな言葉が出てきても初心者が「なにこれ?」となるだけなので、不要です。
それを活用すれば、一文字づつ言うに関しては重くすることがなく、作れると思います。
真偽数に関しては、そんな言葉が出てきても初心者が「なにこれ?」となるだけなので、不要です。
- TA_KENO
-
Scratcher
12 posts
Scratch への提案
@shidakenさんへ
確かに真偽数はそのように代用出来ますし、一文字ずつ言うなども、ブロック定義などで代用はできます。ただし、
の ~ 文字目は、クラウド変数のコードを作るときに、コードを復元する側で役立つと思ったからです。
なんなら真偽数や一文字ずつ言うも、代用はできますが、
なので、10ブロック以内で代用できるとしても、便利で使いやすいという面では、必要だと思います。
確かに真偽数はそのように代用出来ますし、一文字ずつ言うなども、ブロック定義などで代用はできます。ただし、
の ~ 文字目は、クラウド変数のコードを作るときに、コードを復元する側で役立つと思ったからです。
なんなら真偽数や一文字ずつ言うも、代用はできますが、
if <> thenだって、
else
end
set [ v] to [0]
if <> then
set [ v] to [1]
end
if <<not <>> and <(foo) = [0]>> thenで代用することが出来ます。
end
なので、10ブロック以内で代用できるとしても、便利で使いやすいという面では、必要だと思います。
Last edited by TA_KENO (March 31, 2026 00:42:11)
- kurosio-ZP
-
Scratcher
100+ posts
Scratch への提案
#9046
便利である、というだけ実装の理由になりませんし、それよりさきにするべきことがあるなら、STはそちらを優先して実装するでしょう。
できないことを頑張って工夫して作り出すのがscratchの醍醐味ではないだろうか?
追記:ちなみにif elseはほかのプログラミング言語でも実装されているので実装されているだけかと。(だとしたらelifがないのは納得できないが)
便利である、というだけ実装の理由になりませんし、それよりさきにするべきことがあるなら、STはそちらを優先して実装するでしょう。
できないことを頑張って工夫して作り出すのがscratchの醍醐味ではないだろうか?
追記:ちなみにif elseはほかのプログラミング言語でも実装されているので実装されているだけかと。(だとしたらelifがないのは納得できないが)
Last edited by kurosio-ZP (March 31, 2026 00:47:19)
- inoking
-
Scratcher
1000+ posts
Scratch への提案
#9046:
#1 に書いてある以下も読んでみてください。
より具体的には、こちらより:
そしてこちらも:
#1 に書いてある以下も読んでみてください。
#798 および、旧トピックの #3983, #4416, #4971 も読んでみてください。
このエッセイも読んでみてください。
より具体的には、こちらより:
JavaScriptの文字列.substr(自然数)機能を提案します。文字列操作関数の提案はたまにありますが、
ブロックにして(() の()番目から番目から最後までの文字 ::#3fff3aみたいな感じだと思います
自作できる。というのがこれまでのこのトピックでの大体の見解です。
そしてこちらも:
これらはすべて作品側で用意できます。難易度は高くありません(もちろん完全な Scratch 初心者は別です)。
文字列操作は練習問題にぴったりです。
- -popcorn_yummy-
-
Scratcher
44 posts
Scratch への提案
作品と作品を通信できる変数などはどうでしょう
(例:作品Aの通信する変数を1にすると作品Bの通信する変数も1になる)
(例:作品Aの通信する変数を1にすると作品Bの通信する変数も1になる)
- my_hokanko
-
Scratcher
17 posts
Scratch への提案
#9050
理由をお願いします
さらにクラウド変数の制限を回避できてしまうと思います
理由をお願いします
さらにクラウド変数の制限を回避できてしまうと思います
Last edited by my_hokanko (April 2, 2026 03:23:26)
- Zirconium_Tungstate
-
New Scratcher
4 posts
Scratch への提案
いくつかアイデアを思いついたのでまとめてみました。
アイデア1…
->右に+ボタンをつけて、たくさん増やせるようにする
アイデア2…else-if
アイデア3…変更可能なモード
Scratchでは当たり判定でピクセル判定を実装していて、それで描画時にGPUが使えずCPUで描画を行っているのがラグの一つの原因となっている。
モードを変更すると描画時にGPUが使えるようになる代わり、
アイデア1…
(join [] [])など一部ブロックの可変長引数化
->右に+ボタンをつけて、たくさん増やせるようにする
(join ["ゴミ箱ボタン" ] ["ゴミ箱ボタン" ] ["ゴミ箱ボタン" ] ["ゴミ箱ボタン" ] "+ボタン")()の左端ににゴミ箱ボタンをつけて消せるようにする
(join (join [] []) (join[] []))のようにネストすれば同じように使えるが、QOLが大幅に向上する
アイデア2…else-if
if <> thenは既に存在するが、アイデア1の+ボタンの仕組みを利用し、
else
end
if <> thenこれもQOLの向上が目的。
else
※一つ上は"else"ではなく"else if<> "ゴミ箱ボタン""
else
end
※一つ上は" "ではなく"+ボタン"
アイデア3…変更可能なモード
Scratchでは当たり判定でピクセル判定を実装していて、それで描画時にGPUが使えずCPUで描画を行っているのがラグの一つの原因となっている。
モードを変更すると描画時にGPUが使えるようになる代わり、
<touching [ v] ?>などの一部のブロックが使えなくなる代わりに、当たり判定を操作するブロック(拡張機能)を追加する
<touching color [#1b37da] ?>
when this sprite clicked
当たり判定を [矩形 v]にする
当たり判定を [有効化 v]
- inoking
-
Scratcher
1000+ posts
Scratch への提案
いくつかアイデアを思いついたのでまとめてみました。
アイデア1…(join [] [])など一部ブロックの可変長引数化
~略~
アイデア2…else-ifif <> thenは既に存在するが、アイデア1の+ボタンの仕組みを利用し、
else
end
~略~
これもQOLの向上が目的。
アイデア3…変更可能なモード
Scratchでは当たり判定でピクセル判定を実装していて、それで描画時にGPUが使えずCPUで描画を行っているのがラグの一つの原因となっている。
モードを変更すると描画時にGPUが使えるようになる代わり、
~略~
Scratchを触ってこそ、本物の言語のすさまじい力を知る。
#9048 から再掲します。
#1 に書いてある以下も読んでみてください。また、「本物の言語」とありますが#798 および、旧トピックの #3983, #4416, #4971 も読んでみてください。
このエッセイも読んでみてください。
そもそも Scratch はブロックプログラミングではあっても本格的な言語です。
学びやすさを両立しているだけです。
まず Scratch の理念を理解したうえで提案をお願いします。
そして、実務面でも
・GPU を使うと何でも高速化できるものではありません。
・「QOL」を繰り返していますが「QOL」とは一般的に「Quality of Life」のことです。
知識内容をよく確認するようお願いします。
他にも
代替可能性、互換性、ユーザーインターフェースの一貫性などなど
色々考慮すべき点はあります。
さらに、投稿と直接関係がないことで申し訳ないですが
新造アカウントではなく
本アカウントで投稿するほうが文責という点で信頼性が高くなります。
- inoking
-
Scratcher
1000+ posts
Scratch への提案
#9049:
「Scratch はコーディングプラットフォームであって、動画プラットフォームではない」
ということに ST メンバーも同意している
ということも補足として記載しておこうと思います。
なお、反映は、今週末を目途に行う予定です。
これについて、Paddle2See さんからのコメントでは3.8 ショート形式のコンテンツ
・Scratchのプロジェクトは明確な実行時間を持たない
・Scratchは動画ベースではなく、「長さ」を定義できない
とあります。上記は公式見解ではないかもしれませんが、Scratch is a coding platform, not a video platform.That's where I land as well.
「Scratch はコーディングプラットフォームであって、動画プラットフォームではない」
ということに ST メンバーも同意している
ということも補足として記載しておこうと思います。
なお、反映は、今週末を目途に行う予定です。
- abee
-
Scratcher
1000+ posts
Scratch への提案
#9054
この中のいくつかは、Scratchと同じScratch Blocksを使ったMakeCodeで採用されているものですね。

それなので、Scratchでも実現可能ですが、後方互換性などを考えて、あえてやっていないということだと思います。
また、「Scratchでは当たり判定でピクセル判定を実装していて、それで描画時にGPUが使えずCPUで描画を行っているのがラグの一つの原因となっている」の「描画時にGPUが使えず」の意味が良くわからなかったので、詳しく説明してもらえますか。矩形領域で当たり判定を行えば確かに速くなりますが、複雑な形状のコスチュームの場合は細かく矩形を分割する必要があります。また、現状でもプログラムで実装可能です。
この中のいくつかは、Scratchと同じScratch Blocksを使ったMakeCodeで採用されているものですね。

それなので、Scratchでも実現可能ですが、後方互換性などを考えて、あえてやっていないということだと思います。
また、「Scratchでは当たり判定でピクセル判定を実装していて、それで描画時にGPUが使えずCPUで描画を行っているのがラグの一つの原因となっている」の「描画時にGPUが使えず」の意味が良くわからなかったので、詳しく説明してもらえますか。矩形領域で当たり判定を行えば確かに速くなりますが、複雑な形状のコスチュームの場合は細かく矩形を分割する必要があります。また、現状でもプログラムで実装可能です。
Last edited by abee (April 3, 2026 03:35:06)
- Yukihisa2022
-
Scratcher
1000+ posts
Scratch への提案
#9056
改良するとしたら
「Scratch はコーディングプラットフォームであって、動画プラットフォームではない」それは「Scratchは動画ベースではなく」で説明が足りていませんか?
ということに ST メンバーも同意している
ということも補足として記載しておこうと思います。
改良するとしたら
3.8 ショート形式のコンテンツのような形でしょうか。
・Scratchは動画プラットフォームではない
・実行時間が不定であり、プロジェクトの明確な「長さ」を定義できない
- Zirconium_Tungstate
-
New Scratcher
4 posts
Scratch への提案
「Scratchを下げる」ような書き方をしてしまい、申し訳ございませんでした。いくつかアイデアを思いついたのでまとめてみました。
アイデア1…(join [] [])など一部ブロックの可変長引数化
~略~
アイデア2…else-ifif <> thenは既に存在するが、アイデア1の+ボタンの仕組みを利用し、
else
end
~略~
これもQOLの向上が目的。
アイデア3…変更可能なモード
Scratchでは当たり判定でピクセル判定を実装していて、それで描画時にGPUが使えずCPUで描画を行っているのがラグの一つの原因となっている。
モードを変更すると描画時にGPUが使えるようになる代わり、
~略~Scratchを触ってこそ、本物の言語のすさまじい力を知る。
#9048 から再掲します。#1 に書いてある以下も読んでみてください。また、「本物の言語」とありますが#798 および、旧トピックの #3983, #4416, #4971 も読んでみてください。
このエッセイも読んでみてください。
そもそも Scratch はブロックプログラミングではあっても本格的な言語です。
学びやすさを両立しているだけです。
まず Scratch の理念を理解したうえで提案をお願いします。
そして、実務面でも
・GPU を使うと何でも高速化できるものではありません。
・「QOL」を繰り返していますが「QOL」とは一般的に「Quality of Life」のことです。
知識内容をよく確認するようお願いします。
他にも
代替可能性、互換性、ユーザーインターフェースの一貫性などなど
色々考慮すべき点はあります。
さらに、投稿と直接関係がないことで申し訳ないですが
新造アカウントではなく
本アカウントで投稿するほうが文責という点で信頼性が高くなります。
確かにScratchも立派な一つのの言語ですね。
もちろん、文字を打つ形式の言語のほうが様々な機能があり、楽に作品を作れます。
Scratchにはそのような便利さは備わっていませんが、「ブロックをつなげる」ことで初心者にもわかりやすく制作ができます。また、
みなさんへ:で書いてある通り、「多くの言語にある便利なものはないから自分で作る」ということができ、よい経験になるというのも理解できます。
こちらを再掲しておきます。
元の英語のトピックは2015年のものなので現在とはちょっと事情が違うかもしれませんが、ほぼ通用するでしょう。Scratch ブロックの考え方として
以下のような説明が英語の提案フォーラムにあります。
A guide to suggestionsScratch doesn't always have to be super simple, and, for that matter, shouldn't be. For example, if you suggested a “physics” block, which made a sprite follow the laws of physics, this would probably be rejected. Why? It would certainly be useful! The problem is (beyond the difficulties in making such a block) that it makes Scratch too easy. It is kind of taking the “program” out of “Imagine, program, share”. We don't want to be able to make anything in five minutes; that ruins the point of programming, having fun, and putting effort into your projects. However, you can always feel free to make your own physics tutorial, and share it with the community, so that those who don't know how to program physics could learn to program physics.↓ざっと訳
スクラッチはいつも超シンプルである必要はありません。
例えば、物理学の法則に従ったスプライトを作成した「物理学」ブロックを提案した場合、これはおそらく却下されます。
どうして?それは確かに便利でしょう。
問題は Scratch をあまりにも簡単にすることです。それは、「想像、プログラム、共有」から「プログラム」を取り去っているようなものです。
私たちは5分で何かを作れるようにすることを望んでいません。
それはプログラミングする、楽しい時間を費やす、作品に力を注いだりする、ということを損ないます。
しかし、あなたはいつでも自分の物理学チュートリアルを作成し、コミュニティと共有することができます。
それによって、物理学のプログラミムを知らない人が物理学のプログラムを学ぶことができます。
実際Scratchで高度な作品を作っているときに「これがあったら楽に作れるんだけどな」という機能はいくつもありました。
また、Scratchでそのような部分の自作をすることで、実際に文字を打つ形式のプログラミングを行うときに、新しく使う機能を「自作した経験がある」
ことで理解がスムーズに進んだことがあります。
なので、これから提案をするときは、
・便利にしすぎない
・初心者でも混乱しない
などを注意して、Scratchの目的を尊重するよう心がけます。
また、アカウントについてですが、これは新しいアカウントですがアカウントはこれしかありません。
また、Scratch自体は別の場所で10年以上前から利用していますが、個人用にアカウントを作ったのは最近で、これは捨てアカウントではありません。
————————————————————————————————————————————————————————————————————
#9054これについてなんですが、Scratchでは見た目通りの当たり判定を実現するために、ピクセル毎に当たり判定を調べていて、そのためにGPUで描画される画像データをCPUでも処理をする必要があり、その処理に高いコストがかかっています。(描画時にGPUが使えないというのは間違いで、CPUでも画像を処理しなければならないということででした。)
この中のいくつかは、Scratchと同じScratch Blocksを使ったMakeCodeで採用されているものですね。
それなので、Scratchでも実現可能ですが、後方互換性などを考えて、あえてやっていないということだと思います。
また、「Scratchでは当たり判定でピクセル判定を実装していて、それで描画時にGPUが使えずCPUで描画を行っているのがラグの一つの原因となっている」の「描画時にGPUが使えず」の意味が良くわからなかったので、詳しく説明してもらえますか。矩形領域で当たり判定を行えば確かに速くなりますが、複雑な形状のコスチュームの場合は細かく矩形を分割する必要があります。また、現状でもプログラムで実装可能です。
- inoking
-
Scratcher
1000+ posts
Scratch への提案
#9058:
Paddle2See さんからのコメントは
「Scratch はコーディングプラットフォームであって、動画プラットフォームではない」
ということに ST メンバーも同意している
という理念の側面です。
#9056いえ、3.8 の原文で触れられているのは技術的側面です。「Scratch はコーディングプラットフォームであって、動画プラットフォームではない」それは「Scratchは動画ベースではなく」で説明が足りていませんか?
ということに ST メンバーも同意している
ということも補足として記載しておこうと思います。
改良するとしたら3.8 ショート形式のコンテンツのような形でしょうか。
・Scratchは動画プラットフォームではない
・実行時間が不定であり、プロジェクトの明確な「長さ」を定義できない
Paddle2See さんからのコメントは
「Scratch はコーディングプラットフォームであって、動画プラットフォームではない」
ということに ST メンバーも同意している
という理念の側面です。
- tsukebo_sumajan
-
Scratcher
53 posts
Scratch への提案
こんにちは。提案させていただきます。
プロジェクトを決めた時間に投稿する機能(つまり、YouTubeのようなスケジュール投稿)を追加した方がいいと思います。
理由は、
・年末などに「20⚪︎⚪︎年おめでとう!!」みたいなプロジェクトを投稿する際、寝ながら投稿できる。
・投稿スケジュールが決められているアニメやプロジェクトなども、外出をしているときにもプロジェクトを投稿できる。
などです。
プロジェクトを決めた時間に投稿する機能(つまり、YouTubeのようなスケジュール投稿)を追加した方がいいと思います。
理由は、
・年末などに「20⚪︎⚪︎年おめでとう!!」みたいなプロジェクトを投稿する際、寝ながら投稿できる。
・投稿スケジュールが決められているアニメやプロジェクトなども、外出をしているときにもプロジェクトを投稿できる。
などです。
- waka-mako
-
Scratcher
1 post
Scratch への提案
こんにちは。Scratchにあってほしいブロックをいくつか提案します。
スプライト()を止める&動かす
()番目のスプリクトを止める&動かす
などのブロックがあると便利だと思います
スプライト()を止める&動かす
()番目のスプリクトを止める&動かす
などのブロックがあると便利だと思います
