Discuss Scratch
- Discussion Forums
- » 日本語
- » 100%penについて話し合う所
- p_nuts
- Scratcher
1000+ posts
100%penについて話し合う所
https://scratch.mit.edu/discuss/topic/372004/
3Dについて話し合うトピックというものがあるのでそちらに移動することをお勧めします
3Dについて話し合うトピックというものがあるのでそちらに移動することをお勧めします
↑ここから下は署名と言って、いちいち手動で書いていません。署名に関するコメントは、プロフィールにて行って下さい。
ここは議論をする場所です。敬語を心がけましょう。 過去の署名
感情的になっても何もいいことはありません。それはScratchに貢献しますか?
共有垢について|チャット禁止|宣伝とf4f|リミックス|スク恋愛|ゆくも使用↗️|url64|傾向は統計|NFEチェック↗️|仮想通貨|sb3の大きさ|☁️変数のレート制限
I am Japanese and cannot speak English, so I use a translation tool to speak English.
現在の投稿数:15xxposts(akku–n11氏の署名に興味を持ったので作りました 完全自動でカウントします(機能停止中)
- rslabo20106
- Scratcher
2 posts
100%penについて話し合う所
100%penの色を指定した当たり判定は
<何かの 色に触れた>でもいいんです。でも基本的にはリストですね。
<[(自機) ) v] に [x座標,y座標] が含まれる>でもいいんです
<何かの 色に触れた>でもいいんです。でも基本的にはリストですね。
Last edited by rslabo20106 (May 15, 2022 05:17:00)
- Poteto143
- Scratcher
1000+ posts
100%penについて話し合う所
#282
それだと、自機のX座標とY座標がぴったり重ならないと判定が成立しないので、実際の作品に使うには厳しいかも・・・。
それだと、自機のX座標とY座標がぴったり重ならないと判定が成立しないので、実際の作品に使うには厳しいかも・・・。
6周年になりました。ありがとうございます
- sansuu-daisuki1217
- Scratcher
64 posts
100%penについて話し合う所
#282
それだと、自機のX座標とY座標がぴったり重ならないと判定が成立しないので、実際の作品に使うには厳しいかも・・・。
なら
<[自機] に [x座標とy座標の四捨五入] が含まれる>
とすればいかがでしょう
よろしく
まあintroが好きです^^
- noty2008
- Scratcher
100+ posts
100%penについて話し合う所
ご指摘をいただいたため削除
Last edited by noty2008 (June 11, 2022 23:18:19)
厨二病が重症なのは気にしないでくだせぇ(ぇ
- hikaru_adacti
- Scratcher
7 posts
100%penについて話し合う所
100%ペンで3D(FPS)空間を作る方法を教えてください。
FPSのプロジェクトを見てもよくわからないので投稿しました。
あっ、、↑のリンク貼っておきますね。
3D銃撃戦
なんか「レイキャスト」とか難しいのでわかりやすく教えてください。
FPSのプロジェクトを見てもよくわからないので投稿しました。
あっ、、↑のリンク貼っておきますね。
3D銃撃戦
なんか「レイキャスト」とか難しいのでわかりやすく教えてください。
- KimiruHamiru
- New to Scratch
500+ posts
100%penについて話し合う所
Scratchで「レイキャスト」と呼ばれている仕組みの、前提にある考え方は 100%ペンで3D(FPS)空間を作る方法を教えてください。
FPSのプロジェクトを見てもよくわからないので投稿しました。
あっ、、↑のリンク貼っておきますね。
3D銃撃戦
なんか「レイキャスト」とか難しいのでわかりやすく教えてください。
こういうもの
@greenFlagがクリックされたときというのはいいでしょうか?
えがく
定義 えがく
消す
[x v]を(-100)にする
(200)回繰り返す
yを計算する
ペンの太さを(1)にする
ペンを下ろす
x座標を(x)、y座標を((0)+(y))にする
ペンを上げる
x座標を(x)、y座標を((0)-(y))にする
[x v]を(1)ずつ変える
end
定義 yを計算する
[y v]を(100)にする
上のプログラムを実行すると、「四角」が表示されます。
これをちょっといじって、
定義 yを計算するとかにすると、「レイキャスター系のプロジェクトで見た感じの“壁っぽい”雰囲気の何か」に近づくはずです。
もし<<(-50)<(x)>かつ<(x)<(50)>>なら
[y v]を(100)にする
でなければ
[y v]を(50)にする
end
「xの値を元にyの値を決める」部分を、とりあえず手作業でうまいことやると「レイキャスター系プロジェクトで画面に表示される壁」は描けるはずです。
ここまで、どういう動きをしているか、わかるでしょうか?
「xの値を元にyの値を決める」をうまいことやる
=「迷路のデータを元に、自動計算する」
ために考えられたのが、レイキャスターの仕組みです。
つづく
- KimiruHamiru
- New to Scratch
500+ posts
100%penについて話し合う所
つづき
「yさえうまく決められればいい」=「このyを決めるのがレイキャスター」
という確信
までたどり着くと、レイキャスター系のプログラムの「読める部分」はかなり増えるんじゃないかと思います。
どうすれば「yが良い感じになる」か、というのは「遠くの物は小さく見える」という原則にもとづいています。
といった辺りは、
Raycaster Tutorial (List-Based) by PutneyCat
https://scratch.mit.edu/projects/337452463/
で説明されています。英語を見なくても、画面の動きを眺めているとなんとなく仕組みがイメージできるんじゃないかと思います。
いちどに全部理解しなくてもいい、というか全部理解できるようなら「レイキャスター完全に理解した」と言ってもいいかもと思います。
全部理解しなくても、どの変数が何者かある程度予想ができるとこまで来れば、既存のプロジェクトの改造とかはできるかなという気もします。
変数の扱いが微妙に違いますが、以前似た話を書いたののでこの辺
https://scratch.mit.edu/discuss/topic/372004/?page=3#post-5847317
も参考になるかも知れません。
とかいいつつ、その辺の3D関連の話題は、
https://scratch.mit.edu/discuss/topic/372004/
のトピックの方が良いかも知れません。
「yさえうまく決められればいい」=「このyを決めるのがレイキャスター」
という確信
までたどり着くと、レイキャスター系のプログラムの「読める部分」はかなり増えるんじゃないかと思います。
どうすれば「yが良い感じになる」か、というのは「遠くの物は小さく見える」という原則にもとづいています。
といった辺りは、
Raycaster Tutorial (List-Based) by PutneyCat
https://scratch.mit.edu/projects/337452463/
で説明されています。英語を見なくても、画面の動きを眺めているとなんとなく仕組みがイメージできるんじゃないかと思います。
いちどに全部理解しなくてもいい、というか全部理解できるようなら「レイキャスター完全に理解した」と言ってもいいかもと思います。
全部理解しなくても、どの変数が何者かある程度予想ができるとこまで来れば、既存のプロジェクトの改造とかはできるかなという気もします。
変数の扱いが微妙に違いますが、以前似た話を書いたののでこの辺
https://scratch.mit.edu/discuss/topic/372004/?page=3#post-5847317
も参考になるかも知れません。
とかいいつつ、その辺の3D関連の話題は、
https://scratch.mit.edu/discuss/topic/372004/
のトピックの方が良いかも知れません。
- KimiruHamiru
- New to Scratch
500+ posts
100%penについて話し合う所
あと、レイキャスターに関しては、
2022/01からgriffpatch氏がチュートリアル動画を連載していて、最近も第7回が投稿されてるようなので、おすすめしておきます。
Crazy Fun Raycasting (3D Scratch Tutorial)
https://www.youtube.com/watch?v=M1c5TcdITVs&list=PLy4zsTUHwGJKolO9Ko_j6IStFIJnTYBul
youtubeなので、英語字幕を出したり、ほどほどの精度の日本語自動翻訳もできるはずです。
「この動画のここがわからない」、「やってみたけど動かないので共有してみた」とかあれば、
フォーラムで質問するなりすると具体的なアドバイスが得られるかもと思います。
2022/01からgriffpatch氏がチュートリアル動画を連載していて、最近も第7回が投稿されてるようなので、おすすめしておきます。
Crazy Fun Raycasting (3D Scratch Tutorial)
https://www.youtube.com/watch?v=M1c5TcdITVs&list=PLy4zsTUHwGJKolO9Ko_j6IStFIJnTYBul
youtubeなので、英語字幕を出したり、ほどほどの精度の日本語自動翻訳もできるはずです。
「この動画のここがわからない」、「やってみたけど動かないので共有してみた」とかあれば、
フォーラムで質問するなりすると具体的なアドバイスが得られるかもと思います。
- p_nuts
- Scratcher
1000+ posts
100%penについて話し合う所
これは少し違う気もしますが、透明度100のスプライトを使って、判定するのが一番楽だと思います(スプライトの動きをペンで描画する方法)
↑ここから下は署名と言って、いちいち手動で書いていません。署名に関するコメントは、プロフィールにて行って下さい。
ここは議論をする場所です。敬語を心がけましょう。 過去の署名
感情的になっても何もいいことはありません。それはScratchに貢献しますか?
共有垢について|チャット禁止|宣伝とf4f|リミックス|スク恋愛|ゆくも使用↗️|url64|傾向は統計|NFEチェック↗️|仮想通貨|sb3の大きさ|☁️変数のレート制限
I am Japanese and cannot speak English, so I use a translation tool to speak English.
現在の投稿数:15xxposts(akku–n11氏の署名に興味を持ったので作りました 完全自動でカウントします(機能停止中)
- yamaguchi03
- Scratcher
32 posts
100%penについて話し合う所
ただ、その方法だと、100%Penかどうかがあやふやなんですよねw これは少し違う気もしますが、透明度100のスプライトを使って、判定するのが一番楽だと思います(スプライトの動きをペンで描画する方法)
yamaguchi03です。
アイコン:kseei様
署名ですぞ
- su-pa-su-pa-
- Scratcher
87 posts
100%penについて話し合う所
100%penの明確な定義はないようですが、一応私の中では見えなければセーフだと思っています。ただしそのへんは個人個人でちがうので、自分がセーフだと思えば、セーフだと思います(グリフパッチさんもそんな感じですし)
Last edited by su-pa-su-pa- (June 18, 2022 23:04:32)
ここから下はいちいち書いています
自己紹介文
まだまだ未熟なスクラッチャーですが様々な作品を作っていきたいと思います!応援お願いします!
フォローしてくれてもいいんだよ(圧)
好きなもの
宇宙・音楽・工作・数学・物理です
できないけど好きってのもアルヨ
[一番上のやつ嘘]
Last edited by (su-pa-su-pa-) (15 9:46:00)
- KimiruHamiru
- New to Scratch
500+ posts
100%penについて話し合う所
参考になるかわかりませんが……というかそれどころか PENの当たり判定はどうやってやるんですか?
「ペンの話ではない」上に、直接には「当たり判定の話ですらない」
のですが、
この辺のプロジェクト
https://scratch.mit.edu/search/projects?q=list%20platformer
で遊んでみると、「どうやってやるか」については「何となくイメージできる」、かも?と思います。
・「ペンで画面に何かを描く」というのは、コンピュータ的には「480x360(172800個)のマス目にデータを書き込む」ということをやっている
・画面になにを書くか、何を書いたか、をプログラマが全部コントロールできるのがペンプロジェクト
なので、
「これらのプロジェクトが文字を扱う」ように、「画面のどの座標に何が描かれているかという情報を扱う」
というのが「ペンプロジェクトの当たり判定の考え方である」、と言えるかなと思います。
何なら480x360要素のリストに実際に1文字ずつ■とか文字を書くとかでも、理論上はできるはずです。
172800マス=480*360マスに描かれた文字を扱うのは、2022年のPC上のScratch標準機能でリアルタイムにやる(1フレーム0.033秒で172800マスの状態を判定する)のは処理速度的にムボウなので「1マスずつ調べるんじゃなく「100<yかつy<105、なら、床の上にいる」みたいに、範囲で比較する(端と端の情報が分かればその間は同じだという「補間」をすることで、計算回数を減らす)」、などといった「効率化、高速化」が、また大きなテーマとして出てくるわけですが、まずはどんな感じかイメージを持つのがいいかなと思います。