Discuss Scratch

weather_sunny
Scratcher
62 posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)


このように、自分のプロジェクトのURLの中に、画像を入れると、
「Sorry, this post appears to include unsuitable language and will not be updated.」
と表示されます。
#1は読みましたし、きちんとGoogleでも調べました。

補足:
別々にするとちゃんと投稿することができました
(宣伝・投稿をするコーナー)
potetobusimaru
Scratcher
46 posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

#13437
どのような3Dを作りたいのかがわからないのでいくつか基本的なものを説明しますね。
1.
まず、簡単なコスチュームなどの大きさを使用して遠近法を表現する方法です。
実際に変換式としては
S=S0/Z*100
となります。
Scratchブロックだと
set size to (((元の大きさ) / (z)) * (100)) %
となります。

2.
こちらはペン拡張機能を使用して描画する場合の方法です。
Scratchは2Dなので3D座標系(X,Y,Z)を2D座標系(X,Y)に変換する必要があります。
基本的には、投資投影を使用します。透視投影とは、すべての投影線がひとつの視点に集まる、人間の目で見たときと同じ遠近感を表現する図法のことで簡単に言うと近いものは大きく遠いものは小さく見えることを使用したものです。
実際に変換式としては
焦点距離をfとすると
x=f*xc/zc
y=f*yc/zc
となります。
Scratchブロックだと
set [x v] to ((f) * ((3d_x) / (3d_z)))
set [y v] to ((f) * ((3d_y) / (3d_z)))
となります。

他にはレイキャスティングなどの方法もありますが少し難しいので説明はしませんが、3Dに慣れてきたら自分でgoogleなどで“レイキャスティング アルゴリズム”などで調べてみてください。
potetobusimaru
Scratcher
46 posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

#13441
urlの末尾に/を追加すると投稿が可能でした。おそらく、誤判定によるものかと。

Last edited by potetobusimaru (Aug. 29, 2026 17:08:10)

Ke0
Scratcher
1000+ posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

#13437
3Dの作り方だけでなく「コツ」が知りたいなら、3Dについて話し合うトピックに同じような話題があったりします。
abee
Scratcher
1000+ posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

元の投稿が削除されたため、これも削除します。
それを書いたのは普通のユーザーで公式のものではありません。

Last edited by abee (Sept. 2, 2026 09:01:54)

KimiruHamiru
New Scratcher
500+ posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

yosikawaaoto1115 wrote:

質問です。Scratchで3Dを作るときのコツってありますか?
私の場合、3Dするときに重視してるのは
「点(座標データ)をたくさん使うこと」であり、
「点(座標データ)をたくさん使うこと」ができるように、工夫すること。
です。

点が1つの場合
そもそも3Dって何?というと、
描くものを「大きく書いたり、小さく書いたりする」と
「遠くなったり、近くなったりするように見える」
https://scratch.mit.edu/projects/570021949/
わけで、

「2倍遠くのものは半分の大きさに見える」
=「目から画面の距離」を1とすると、
「画面上に描かれてるものを、半分の大きさで描く」と、
「目から画面の距離の2倍遠く(画面の奥)にあるように見える」

というのが遠近法の基本、というより、
「2Dになくて、3Dにあるもの」なんて「それ以外なにもない、と言ってもいい」、
と思っています。

上のも結構かっこいいと思って作ったのですが、

点が2つの場合
3Dプログラムが、さらにかっこよく見えるのは、
「大きくなったり小さくなったりの仕方が、点によって違う」場合である、
とかいうのが最近の私の考えです。点が2つあれば結構かっこいいです。
https://scratch.mit.edu/projects/712973032
この例だと「点が8つある」わけですが、「大きさの種類、動きの種類」は2種類しかないです。
ガラス板2枚、それぞれに絵をかいて、かさねて、動かす(あるいは視点の方を動かす)ような意味です。
「パララックス」とか呼ばれてる3Dプロジェクトは、これに近いです。

点が8つの場合
「8つの点それぞれの距離が全部違う」
https://scratch.mit.edu/projects/895289120
と、もっとかっこいいはずです。
3Dでおなじみのぐりぐり動く立方体が作れます。
これをやるためには、点(座標データ)が8つないと無理です。

「奥や手前」に動いたとき、
どれくらいの大きさに見えるはずなのか=どれくらいの大きさで描けば「それっぽくみえる」か
という部分については、、最初に書いた「2倍遠くのものは半分の大きさに見える」以外の要素は、
「なにもない」
というのが私の考えです。
その計算自体は割と単純で、「距離で割り算する」だけです。
点が8つなら「8つの点それぞれについて「距離で割り算する」」ことになります。

「この距離の場合、どう見えるか」の話のひとつ前に、
それぞれに点が「どう動いたか」、特に「距離がいくつになるか」の計算
も、あることはあるんですが、
その計算の仕組みは、結局のところ「2Dと同じ」、2Dでの回転を「向きを変えて2回繰り返すだけ」、と考えていいです。
2Dで回転できる(プログラムで言えば、画面上の円周の上を、ネコになぞらせることができる)
ようになっていれば、
3Dでも回転できる(=3Dだから特別な知識は必要ない)
と言ってもいいです。

点がたくさんの場合
一方で、「ひとつの絵の、右端と左端で、どれくらい遠くにあるか」が違う場合、
さらには
「中ぐらいとか中ぐらい右よりとか無限に細かくなっても、それぞれの点までの距離が違う」場合、
https://scratch.mit.edu/projects/601390692
と、かなりかっこいいことになると思っています。

「ひとつの絵の、右端と左端で、どれくらい遠くにあるかが違う」の前提は、
一つの絵が、いくつかの点、できれば「たくさん」の点で、できていること、です。
(点、で抵抗があるなら「座標値」とか「座標データ」とか呼んでもいいです)

ということで、「Scratchでの3Dのコツ」とは、
・「点(座標データ)をたくさん使うこと」
・それができるようになること、その部分で工夫すること、
かなと、今は思っています。

プログラミング的なことで言えば、
・たくさんのものを扱うために「リストを使う」。使わなくてもできなくはないけど、たくさんの点を扱うならリストを使う方が楽。
・たくさんのものを描くのはそれだけ時間がかかるので、素早く(遅くならずに)描く工夫をする
・たくさんの点(座標データ)を、作ったり、どこかから持ってきたりする工夫をする
とかいったことです。
gccxnondx
Scratcher
100+ posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

「公式のものでは」ないことも事実です。
「1ユーザーがどこかで言っていた」そんな情報だけでは私達は信用できません。
ここはニュースの速報板ではありません。きちんとしたソースをもった議論を行ってください。
追記:元投稿が削除されています

Last edited by gccxnondx (Sept. 1, 2026 21:09:49)

kennkyuu2
Scratcher
10 posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

when green flag clicked
repeat (pick random (1) to (10))
next backdrop
end
で背景に表示されている数字によってルーレットをつくりました、乱数の使い方は合ってますか?
paletsistem
Scratcher
26 posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

#13448
指定した値の間からランダムな値を出すという認識があれば合ってると思います。ところで、あなたのルーレットには回す前の数字によって結果の確率に偏りがありますね。
-popcorn_yummy-
Scratcher
87 posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

kennkyuu2 wrote:

when green flag clicked
repeat (pick random (1) to (10))
next backdrop
end
で背景に表示されている数字によってルーレットをつくりました、乱数の使い方は合ってますか?
 ずっと
コスチュームを [ ((1) から (10)までの乱数) v]にする
end
で停止ボタン(赤い8角形)を押すと止まるルーレットができます。
追記:ブロックが色々バグってます。

Last edited by -popcorn_yummy- (Sept. 3, 2026 06:13:54)

TouhuMisoshiru
Scratcher
3 posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

いま、「ゴンザレス園経営ゲーム」というゲームを作っています。
しかし、バグがあって、原因が分かりません。どういうバグかというと、
何らかの条件で(追記:客が重なったときにおこることを確認しましたが、まだ詳しいことはわかりません。)、お土産ショップにいないのに、お土産ショップにいる判定になり、買い物をしてしまうというバグです。
こちらがリンクです。 https://scratch.mit.edu/projects/1377509822/
どなたか、原因(と対処法)が分かる方は、お願いします。

Last edited by TouhuMisoshiru (Sept. 3, 2026 22:56:48)

gccxnondx
Scratcher
100+ posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

#13448
プログラムが間違っています。正しくは
緑の旗が押されたとき
((1)から([a])までの乱数)回繰り返す
次の背景にする
end
です。aを背景の全部の枚数にすると、すべての背景が現れる確率が同様に確からしくなります。
MEZOROSO
Scratcher
37 posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

すいません、scratchで広告のようなものを作ることっていいのですか?
Ke0
Scratcher
1000+ posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

「広告のようなもの」、がどのようなものを指しているかによります。
宣伝トピックはもちろん、プロジェクトやスタジオで広告的な役割を持つものを作るのは問題ありません。それを押し売りするようなこと(スパムに当たる場合)はダメです。
コメントで「〜見てください」みたいなフォーマットを触れて回っているのも「広告のようなもの」と言えそうですが、それはダメということですね。
yugo1006
Scratcher
41 posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

Scratchで検索や「見る」を押した際のページで作品が表示されないんですけれどもバグですか?おまかんですか?
paru-tan
Scratcher
17 posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

yugo1006 wrote:

Scratchで検索や「見る」を押した際のページで作品が表示されないんですけれどもバグですか?おまかんですか?
僕もなっていますが、多分バグです。
(良かった~仲間がいた~w
-_-sans_1
Scratcher
59 posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

#13415 の回答をお願いしたいです
abee
Scratcher
1000+ posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

#13457
Scratch Teamが行った処分について不服がある場合は、その作品に違反の事実が無いことを客観的に証明できる根拠をScratch Teamが指定する方法で連絡する必要があります。そこにケース番号やメールアドレスなどが書かれていない場合は、このページの一番下にある「連絡先」の「ヘルプを得る」から行うことができます。
-_-sans_1さんが18歳未満の場合は、監督責任が保護者にあるので、保護者の方が行うことをお勧めします。
yamatoosagani
Scratcher
5 posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

ディスカッションフォーラムの通知を消す方法ってありますか?
Cyber_Psycho
Scratcher
49 posts

質問コーナー7(利用する前に最初の投稿(#1)を確認してね)

フォローを外せば通知は消えると思います。右下か右上にあるunfollow discussionを押すとできますよ。

Powered by DjangoBB