Discuss Scratch
- newmomizi_txt
- Scratcher
1000+ posts
100%penについて話し合う所
#438
「計算を効率化したい」という意味であれば、そのプログラムを見ないことには何とも言えません。
「計算を効率化したい」という意味であれば、そのプログラムを見ないことには何とも言えません。
ここから下は署名(しょめい)と言います。(最終更新 2024/02/01 JST)
1973年(昭和48年)12月、愛知県宝飯郡小坂井町(現・豊川市)を中心に「豊川信用金庫が倒産する」というデマが流れたことから取り付け騒ぎが発生し、短期間(二週間弱)で約14億円もの預貯金が引き出され、倒産危機を起こした事件である。(Wikipedia「豊川信用金庫事件」より引用、2024年2月1日閲覧。)
警察が信用毀損業務妨害の疑いで捜査を行った結果、女子高生3人の雑談をきっかけとした自然発生的な流言が原因であり、犯罪性がないことが判明した。デマがパニックを引き起こすまでの詳細な過程が解明された珍しい事例であるため、心理学や社会学の教材として取り上げられることがある。
- KimiruHamiru
- New to Scratch
500+ posts
100%penについて話し合う所
細かい話や理由はさておき、 Scratchで動くレイトレーシングを作っているんですが、リアルタイムで描画するのが難しいので、描画を早くする方法を教えてくれませんか?
2023/11/19 20:40現在の
https://scratch.mit.edu/projects/926681926/
についていえば、
「定義 draw」
の設定画面で
「画面を再描画せずに実行する」チェックボックスをオンにする
と劇的に速くなると思います。
「画面を再描画せずに実行する」
についてはフォーラム内外問わずあちこちで研究されてると思うので、検索して調べるとさらなる工夫の余地が見つかると思います。
- honnkon
- Scratcher
55 posts
100%penについて話し合う所
レイトレーシングにおいてはそうとも言えないことがあります。徐々にきれいにしていくやり方の場合、「画面を再描画せずに実行する」チェックボックスをオンにすると逆に面倒になる可能性が出てしまいます。 「画面を再描画せずに実行する」チェックボックスをオンにすると劇的に速くなると思います。
どもども。署名でーす。署名についてはこちらへどうぞ。(最終更新:2024/04/27 15:58ごろ)
キーワード2「は」。1から順番に並べると文ができるので、それをコメントする。
自分のサイト
https://www.honnkon.tech
セーブコードマネージャー作ってみた(何か特殊なものの共有にも使えるかも)
JavaScriptだけだといろいろやるのには無理があるか。
=================宣伝======================================
ボールゲーム
https://scratch.mit.edu/projects/935455978/
スイカゲームのようなもの!本日のスコアランキング、昨日のスコアランキング、全期間でのスコアランキング付き!
https://scratch.mit.edu/projects/888203639/ 的当てゲーム
https://scratch.mit.edu/projects/888190209/ ビル経営ゲーム(v6)パッケージ版
https://scratch.mit.edu/projects/890766250/ 鉛筆クリッカー
https://scratch.mit.edu/studios/33863663/ 短編アニメ(現在休止中 再開は不明)
https://scratch.mit.edu/studios/34232284/ スクラニメ
https://scratch.mit.edu/projects/900505681/ ∞ Fizz Buzz
Brainf*ckのインタープリンタ作ってみました
https://scratch.mit.edu/projects/945473537/
HQ9+のインタープリンタ作ってみました
https://scratch.mit.edu/projects/945470350/
「Hello, World!」の比較
https://scratch.mit.edu/projects/934847040/
===========================================================
ここまで見るほど暇なら秘密のキーワードを見つけてくれるのかな?
キーワード3「限」。キーワードは5つ。
キーワード1「円周率」。もう全部見つけたかな?
キーワード4「りが」。もう全部見つけたかな?
やっほー。この文字が見えているという事は何かしたんだね。
何かっていうのはDevtoolsを使ってるか拡張機能を使ってるかその他のことをしてるってことね。
ちなみに隠し文字があるけど、見つけられたかな?
キーワードが入っているよ。キーワード5「ない」。もう全部見つけたかな?
「まだ見つけてない!」という人は、探してみてね。
すべて見つけたらプロフィール(https://scratch.mit.edu/users/honnkon)にコメントしてね。
- KimiruHamiru
- New to Scratch
500+ posts
100%penについて話し合う所
レイトレーシングにおいてはそうとも言えないことがあります。徐々にきれいにしていくやり方の場合、「画面を再描画せずに実行する」チェックボックスをオンにすると逆に面倒になる可能性が出てしまいます。 「画面を再描画せずに実行する」チェックボックスをオンにすると劇的に速くなると思います。
一般論として「レイトレーシングにおいてはそうとも言えないことが」ある(=劇的に速くなるとは限らない)
というのはその通りと思います
が、質問者が問題にしてると思われる
「 https://scratch.mit.edu/projects/926681926/ 」については
高速化「しました」。恐らくはScratchが動くレベルの環境であれば実行の文脈を問わず、高速化「するはず」です。
一般論としても「ペン描画で高速化する」が目標であるなら、
「画面を再描画せずに実行する」チェックボックスをオン
をまったく使わない、という選択肢は、ない
と思います(「面倒になる可能性」は、あるような気もしているのですが、今時点ではどんなものがあるか(=本当に回避したい状況があるのか)わかりません)。
「Scratchで動くレイトレーシング」、「リアルタイムで描画する」のレベルに到達するには、それだけでは足りない、ということは思います。
- KimiruHamiru
- New to Scratch
500+ posts
100%penについて話し合う所
別な話ですが、レイトレースのような「ピクセルごとに並列に処理できるやり方」であれば、一般に
https://scratch.mit.edu/projects/830136359/
の「ランダムな座標+フレームレート強制」の仕組み
は参考になるかもと思います。
「高速化は全くしない」のですが、
ランダム(描画順序が下から上、上から下でない)でも成り立つことを利用して
「全体像が割と早く得られる」+「1フレームで描き切れなくても何かしらの絵が出る」仕組みです。
「レイトレース」と呼ぶかどうかは文脈によるかもしれませんが、Scratchでも
https://scratch.mit.edu/projects/773185095/
( https://turbowarp.org/773185095 )
みたいなレベルまでは行けます。
https://scratch.mit.edu/projects/830136359/
の「ランダムな座標+フレームレート強制」の仕組み
は参考になるかもと思います。
「高速化は全くしない」のですが、
ランダム(描画順序が下から上、上から下でない)でも成り立つことを利用して
「全体像が割と早く得られる」+「1フレームで描き切れなくても何かしらの絵が出る」仕組みです。
「レイトレース」と呼ぶかどうかは文脈によるかもしれませんが、Scratchでも
https://scratch.mit.edu/projects/773185095/
( https://turbowarp.org/773185095 )
みたいなレベルまでは行けます。
- oligami
- Scratcher
100+ posts
100%penについて話し合う所
#443
チェックボックスをONにしてても、描画に時間がかかりすぎると、全部書き終わってない状態でも表示されるやつですよね?
確か、チェックボックスをオンにした関数と、オフにした関数をうまく分けると、直った気がします。レイトレーシングにおいてはそうとも言えないことがあります。徐々にきれいにしていくやり方の場合、「画面を再描画せずに実行する」チェックボックスをオンにすると逆に面倒になる可能性が出てしまいます。 「画面を再描画せずに実行する」チェックボックスをオンにすると劇的に速くなると思います。
チェックボックスをONにしてても、描画に時間がかかりすぎると、全部書き終わってない状態でも表示されるやつですよね?
後輩にRust(プログラミング言語)やろうぜと言ったらゲームのRustと勘違いされた()
そんな流行ってんのそのゲーム?
- honnkon
- Scratcher
55 posts
100%penについて話し合う所
どもども。署名でーす。署名についてはこちらへどうぞ。(最終更新:2024/04/27 15:58ごろ)
キーワード2「は」。1から順番に並べると文ができるので、それをコメントする。
自分のサイト
https://www.honnkon.tech
セーブコードマネージャー作ってみた(何か特殊なものの共有にも使えるかも)
JavaScriptだけだといろいろやるのには無理があるか。
=================宣伝======================================
ボールゲーム
https://scratch.mit.edu/projects/935455978/
スイカゲームのようなもの!本日のスコアランキング、昨日のスコアランキング、全期間でのスコアランキング付き!
https://scratch.mit.edu/projects/888203639/ 的当てゲーム
https://scratch.mit.edu/projects/888190209/ ビル経営ゲーム(v6)パッケージ版
https://scratch.mit.edu/projects/890766250/ 鉛筆クリッカー
https://scratch.mit.edu/studios/33863663/ 短編アニメ(現在休止中 再開は不明)
https://scratch.mit.edu/studios/34232284/ スクラニメ
https://scratch.mit.edu/projects/900505681/ ∞ Fizz Buzz
Brainf*ckのインタープリンタ作ってみました
https://scratch.mit.edu/projects/945473537/
HQ9+のインタープリンタ作ってみました
https://scratch.mit.edu/projects/945470350/
「Hello, World!」の比較
https://scratch.mit.edu/projects/934847040/
===========================================================
ここまで見るほど暇なら秘密のキーワードを見つけてくれるのかな?
キーワード3「限」。キーワードは5つ。
キーワード1「円周率」。もう全部見つけたかな?
キーワード4「りが」。もう全部見つけたかな?
やっほー。この文字が見えているという事は何かしたんだね。
何かっていうのはDevtoolsを使ってるか拡張機能を使ってるかその他のことをしてるってことね。
ちなみに隠し文字があるけど、見つけられたかな?
キーワードが入っているよ。キーワード5「ない」。もう全部見つけたかな?
「まだ見つけてない!」という人は、探してみてね。
すべて見つけたらプロフィール(https://scratch.mit.edu/users/honnkon)にコメントしてね。
- newmomizi_txt
- Scratcher
1000+ posts
100%penについて話し合う所
#447
・正方形
チェス盤距離をもとに判定できます。
具体的には、「max(abs(x1 - x2), abs(y1 - y2)) < (正方形の辺の長さ) / 2」です。
・長方形
x座標の差、y座標の差を別々に判定します。
具体的には「abs(x1 - x2) < (長方形の横の長さ) / 2 かつ、 abs(y1 - y2) < (長方形の縦の長さ) / 2」という感じです。
・円形
平面上の距離の公式を使用して判定できます。
具体的には、(x1 - x2)^2 + (y1 - y2)^2 < (円の半径) です。
なお、max(a, b)とはaとbのうち大きい方、abs(n)とはnの絶対値という意味です。
・正方形
チェス盤距離をもとに判定できます。
具体的には、「max(abs(x1 - x2), abs(y1 - y2)) < (正方形の辺の長さ) / 2」です。
・長方形
x座標の差、y座標の差を別々に判定します。
具体的には「abs(x1 - x2) < (長方形の横の長さ) / 2 かつ、 abs(y1 - y2) < (長方形の縦の長さ) / 2」という感じです。
・円形
平面上の距離の公式を使用して判定できます。
具体的には、(x1 - x2)^2 + (y1 - y2)^2 < (円の半径) です。
なお、max(a, b)とはaとbのうち大きい方、abs(n)とはnの絶対値という意味です。
Last edited by newmomizi_txt (Nov. 22, 2023 08:43:19)
ここから下は署名(しょめい)と言います。(最終更新 2024/02/01 JST)
1973年(昭和48年)12月、愛知県宝飯郡小坂井町(現・豊川市)を中心に「豊川信用金庫が倒産する」というデマが流れたことから取り付け騒ぎが発生し、短期間(二週間弱)で約14億円もの預貯金が引き出され、倒産危機を起こした事件である。(Wikipedia「豊川信用金庫事件」より引用、2024年2月1日閲覧。)
警察が信用毀損業務妨害の疑いで捜査を行った結果、女子高生3人の雑談をきっかけとした自然発生的な流言が原因であり、犯罪性がないことが判明した。デマがパニックを引き起こすまでの詳細な過程が解明された珍しい事例であるため、心理学や社会学の教材として取り上げられることがある。
- kokkun1
- Scratcher
10 posts
100%penについて話し合う所
それは、円の中心が次のような図形の中に入っているかを確かめればいいです。 すみません、長方形と円形の当たり判定ってどうやれば良いですか…?
当たり判定をしたい円と半径が同じ円を、当たり判定をしたい長方形の内部を中心が出ないように動かしたときの軌跡
- kokkun1
- Scratcher
10 posts
100%penについて話し合う所
長方形から見て、4つの領域のうちのどれに円の中心が入っているか判定すれば良いです 以下の画像でいう赤、黄、緑、青のどの辺から触れたかを判定したいと思っています。
\ /
\ /
ーーーーーー
| |
| |
ーーーーーー
/ \
/ \
- kouryou118103
- Scratcher
1000+ posts
100%penについて話し合う所
ブロックに触れた時に、「赤、黄、緑、青」のコスチュームにして、どの色に触れたか判定すると良いと思います。
Scratchはぼくより年上らしい。(2007/5/15 サービス開始)
- kouryou118103
- Scratcher
1000+ posts
100%penについて話し合う所
コスチュームっていうのは、ペンで書いた長方形のつもりでした。
わかりづらくてすみません。
わかりづらくてすみません。
Scratchはぼくより年上らしい。(2007/5/15 サービス開始)
- KetLatch
- Scratcher
1 post
100%penについて話し合う所
ペンで三平方の定理を用いて三角形を描画する際にx軸をb歩動かす、y軸をaほ動かす、をした際に起点にx,yを戻すプログラムというのはどのようにしたら良いのでしょうか。(初期位置のx,y座標の数値を変数として保存して後にそれを引き出して戻す方法ではないものでお願いします。)
- KimiruHamiru
- New to Scratch
500+ posts
100%penについて話し合う所
「三平方の定理を用いて三角形を描画する」 ペンで三平方の定理を用いて三角形を描画する際にx軸をb歩動かす、y軸をaほ動かす、をした際に起点にx,yを戻すプログラムというのはどのようにしたら良いのでしょうか。(初期位置のx,y座標の数値を変数として保存して後にそれを引き出して戻す方法ではないものでお願いします。)
というのが「直角三角形を描きたい」ということで、
定義 三角形を描く(x) (y)といった話であるなら、
x座標を(x)、y座標を(y)にする
ペンを下ろす
(90)度に向ける
(b)歩動かす
(0)度に向ける
(a)歩動かす
ここで、何度に向ける?
((((a)*(a))+((b)*(b)))の[平方根 v])歩動かす
ペンを上げる
こんな感じ
((((b)/(a))の[atan v])+(180))度に向けるにするとだいたいできるかと思います。
aの範囲によっては
もし<(a)<(0)>ならみたいなこと、をする必要があります(厳密さにこだわるなら「atan scratch」とか検索して研究してみてください)。
(180)度回す
でなければ
(0)度回す
end
ただ、やりたいことが何か、によっては、定義の引数の仕組みを使って
定義 三角形を描く(x) (y)などと書く方が簡単かなと思います。
x座標を(x)、y座標を(y)にする
ペンを下ろす
(90)度に向ける
(b)歩動かす
(0)度に向ける
(a)歩動かす
x座標を(x)、y座標を(y)にする
ペンを上げる
「三平方の定理を用いて」とか「初期位置のx,y座標の数値を変数として保存して後にそれを引き出して戻す方法」
という条件に引っかかる、のが問題になるかどうかは、「やりたかったことが何か次第/避けたいことが何か次第」かなと思います。
- tomato-2nd
- Scratcher
5 posts
100%penについて話し合う所
penで3角形の塗りつぶしの方法を探しているのですがどなたかわかりますか?3角形の中心を求めたいのですがよくわからないです
- jjhs3213
- Scratcher
11 posts
100%penについて話し合う所
三角形の塗り潰しの中心には三角形の内心を使います。 penで3角形の塗りつぶしの方法を探しているのですがどなたかわかりますか?3角形の中心を求めたいのですがよくわからないです
三角形ABCの内心は、BC、CA、ABの長さをそれぞれa,b,cとすると、
((a*Ax+b*Bx+c*Cx)/(a+b+c), (a*Ay+b*By+c*Cy)/(a+b+c))
で求められます