Discuss Scratch

newmomizi_txt
Scratcher
1000+ posts

100%penについて話し合う所

#438
「計算を効率化したい」という意味であれば、そのプログラムを見ないことには何とも言えません。

ここから下は署名(しょめい)と言います。(最終更新 2024/02/01 JST)
1973年(昭和48年)12月、愛知県宝飯郡小坂井町(現・豊川市)を中心に「豊川信用金庫が倒産する」というデマが流れたことから取り付け騒ぎが発生し、短期間(二週間弱)で約14億円もの預貯金が引き出され、倒産危機を起こした事件である。
警察が信用毀損業務妨害の疑いで捜査を行った結果、女子高生3人の雑談をきっかけとした自然発生的な流言が原因であり、犯罪性がないことが判明した。デマがパニックを引き起こすまでの詳細な過程が解明された珍しい事例であるため、心理学や社会学の教材として取り上げられることがある。

(Wikipedia「豊川信用金庫事件」より引用、2024年2月1日閲覧。)
KimiruHamiru
New to Scratch
500+ posts

100%penについて話し合う所

yukiscratch44 wrote:

Scratchで動くレイトレーシングを作っているんですが、リアルタイムで描画するのが難しいので、描画を早くする方法を教えてくれませんか?
細かい話や理由はさておき、

2023/11/19 20:40現在の
https://scratch.mit.edu/projects/926681926/

についていえば、
「定義 draw」
の設定画面で
「画面を再描画せずに実行する」チェックボックスをオンにする

と劇的に速くなると思います。

「画面を再描画せずに実行する」
についてはフォーラム内外問わずあちこちで研究されてると思うので、検索して調べるとさらなる工夫の余地が見つかると思います。
honnkon
Scratcher
55 posts

100%penについて話し合う所

KimiruHamiru wrote:

「画面を再描画せずに実行する」チェックボックスをオンにすると劇的に速くなると思います。
レイトレーシングにおいてはそうとも言えないことがあります。徐々にきれいにしていくやり方の場合、「画面を再描画せずに実行する」チェックボックスをオンにすると逆に面倒になる可能性が出てしまいます。

どもども。署名でーす。署名についてはこちらへどうぞ。(最終更新: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について話し合う所

honnkon wrote:

KimiruHamiru wrote:

「画面を再描画せずに実行する」チェックボックスをオンにすると劇的に速くなると思います。
レイトレーシングにおいてはそうとも言えないことがあります。徐々にきれいにしていくやり方の場合、「画面を再描画せずに実行する」チェックボックスをオンにすると逆に面倒になる可能性が出てしまいます。

一般論として「レイトレーシングにおいてはそうとも言えないことが」ある(=劇的に速くなるとは限らない)
というのはその通りと思います

が、質問者が問題にしてると思われる
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 )
みたいなレベルまでは行けます。
oligami
Scratcher
100+ posts

100%penについて話し合う所

#443

honnkon wrote:

KimiruHamiru wrote:

「画面を再描画せずに実行する」チェックボックスをオンにすると劇的に速くなると思います。
レイトレーシングにおいてはそうとも言えないことがあります。徐々にきれいにしていくやり方の場合、「画面を再描画せずに実行する」チェックボックスをオンにすると逆に面倒になる可能性が出てしまいます。
確か、チェックボックスをオンにした関数と、オフにした関数をうまく分けると、直った気がします。
チェックボックスをONにしてても、描画に時間がかかりすぎると、全部書き終わってない状態でも表示されるやつですよね?

後輩にRust(プログラミング言語)やろうぜと言ったらゲームのRustと勘違いされた()
そんな流行ってんのそのゲーム?
ryoichiro
Scratcher
11 posts

100%penについて話し合う所

すみません、長方形と円形の当たり判定ってどうやれば良いですか…?

とか上から目線で言っている自分がいる。なぜか癖なのか上から目線になる。もし上から目線になっていたら
「あーこいつ偉そうにしてんなー」でスルーしていただくと幸いです。←保険
もし良ければフォローして下さい。←そーゆーとことか
-Event-この署名を見た時
[Ryoichiro ]をフォローする
honnkon
Scratcher
55 posts

100%penについて話し合う所

#447
オブジェクトの形によってかなり変わってくると思います。
できるだけ詳細を教えてください。

どもども。署名でーす。署名についてはこちらへどうぞ。(最終更新: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の絶対値という意味です。

Last edited by newmomizi_txt (Nov. 22, 2023 08:43:19)


ここから下は署名(しょめい)と言います。(最終更新 2024/02/01 JST)
1973年(昭和48年)12月、愛知県宝飯郡小坂井町(現・豊川市)を中心に「豊川信用金庫が倒産する」というデマが流れたことから取り付け騒ぎが発生し、短期間(二週間弱)で約14億円もの預貯金が引き出され、倒産危機を起こした事件である。
警察が信用毀損業務妨害の疑いで捜査を行った結果、女子高生3人の雑談をきっかけとした自然発生的な流言が原因であり、犯罪性がないことが判明した。デマがパニックを引き起こすまでの詳細な過程が解明された珍しい事例であるため、心理学や社会学の教材として取り上げられることがある。

(Wikipedia「豊川信用金庫事件」より引用、2024年2月1日閲覧。)
kokkun1
Scratcher
10 posts

100%penについて話し合う所

ryoichiro wrote:

すみません、長方形と円形の当たり判定ってどうやれば良いですか…?
それは、円の中心が次のような図形の中に入っているかを確かめればいいです。

当たり判定をしたい円と半径が同じ円を、当たり判定をしたい長方形の内部を中心が出ないように動かしたときの軌跡

立体四目並べをAI (CPU)と対戦できるプロジェクトを作りました。
https://turbowarp.org/834076649/fullscreen?hqpen&fps=60
syokaki
Scratcher
100+ posts

100%penについて話し合う所

質問です。
現在僕は100%penのブロック崩しを制作しているのですが、長方形の範囲内に点が入った時に上下左右どの方向から接触したかを判定する方法を教えてください。
座標等の情報は以下のリストで管理しています。
点側 : x座標 y座標 速度 向き
ブロック側 : 中心x 中心y 幅 高さ
方法によっては点側の1フレーム前の情報もリストに記録する予定です。

主にゲームを作ってます。サブアカウントでは便利な素材を共有しています。
syokaki
Scratcher
100+ posts

100%penについて話し合う所

以下の画像でいう赤、黄、緑、青のどの辺から触れたかを判定したいと思っています。

主にゲームを作ってます。サブアカウントでは便利な素材を共有しています。
kokkun1
Scratcher
10 posts

100%penについて話し合う所

syokaki wrote:

以下の画像でいう赤、黄、緑、青のどの辺から触れたかを判定したいと思っています。
長方形から見て、4つの領域のうちのどれに円の中心が入っているか判定すれば良いです
\        /
 \      /
  ーーーーーー
  |    |
  |    |
  ーーーーーー
 /      \
/        \

立体四目並べをAI (CPU)と対戦できるプロジェクトを作りました。
https://turbowarp.org/834076649/fullscreen?hqpen&fps=60
kouryou118103
Scratcher
1000+ posts

100%penについて話し合う所

ブロックに触れた時に、「赤、黄、緑、青」のコスチュームにして、どの色に触れたか判定すると良いと思います。

Scratchはぼくより年上らしい。(2007/5/15 サービス開始)
syokaki
Scratcher
100+ posts

100%penについて話し合う所

#453 ありがとうございます。参考にしてみます。
#454 僕の中では100%penは基本的にコスチュームを判定含め使用しないものとしています。

主にゲームを作ってます。サブアカウントでは便利な素材を共有しています。
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について話し合う所

KetLatch wrote:

ペンで三平方の定理を用いて三角形を描画する際に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)>なら
(180)度回す
でなければ
(0)度回す
end
みたいなこと、をする必要があります(厳密さにこだわるなら「atan scratch」とか検索して研究してみてください)。

ただ、やりたいことが何か、によっては、定義の引数の仕組みを使って
定義 三角形を描く(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について話し合う所

tomato-2nd wrote:

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))
で求められます

Powered by DjangoBB