[過去ログ] 【ゲームエンジン】Unityなんでも質問スレpart8 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
456: 2022/10/27(木)09:50 ID:8Wq4UzIH(1) AAS
Mathf.Sign(rb.velocity.y) == 1
↓
Mathf.Sign(rb.velocity.y) == -1
じゃないの?
457(2): 2022/10/27(木)10:10 ID:n9F1DQle(1/3) AAS
適当に書いてみた
とりあえず状態外に見えないようにして
使えるかどうかだけ確認するのが楽だし
衝突は2DならcontactFillterでいい
外部リンク:ideone.com
俺は本職でもないただの無職だが
このくらいは自前で書けるように勉強しないと
ミニゲームすらままならないゾ
458(1): 2022/10/27(木)10:27 ID:Mb1soW9V(1) AAS
まぁバグは本人が意識出来てる動作と実際の計算が異なる事で発生する
人為的なミスなので死角からハリセンが飛んでくるのに近い
外部リンク:ideone.com
velocityはプロットすると分かるが収束するまで結構暴れるからOnCollisionEnter2D一択だろうね
459: 2022/10/27(木)11:09 ID:El3K99WE(1) AAS
>>457
>このくらいは自前で書けるように勉強しないと
正にこれだと思うわ
460: 2022/10/27(木)11:25 ID:Ccb5Bjo8(1) AAS
もうわからないです
と言ってるからここが終着点なんだろう
461: 2022/10/27(木)11:34 ID:bQ7WgbrX(1/2) AAS
どうでもいいけど要件整理って大事だと思う
462(1): 弟子 2022/10/27(木)11:39 ID:gXi2+Oha(1/5) AAS
久しぶりだな
まずさシンプルにいこう、逆に考えてみるか
void Update()
{
moveFunction();
if (Input.GetKeyDown(KeyCode.Space))
{
rb.AddForce(rb.transform.up * 5.0f ,ForceMode2D.Impulse);
jumpingFunction();
//print(max_jump_count);
//print(isHitToGround());
}
}
private void moveFunction()
{
//操作方向
float x = Input.GetAxis("Horizontal");
float y = Input.GetAxis("Vertical");
//左右移動
rb.velocity = new Vector2(x * 10, rb.velocity.y);
}
画像リンク
これでスペース押すと、ジャンプ繰り返すんだけど
3回目で押せなくすればいいかなと
463: 2022/10/27(木)11:39 ID:1clBHIjw(1) AAS
デバッガで追えばjumpingFunctionが2にしたのを同一フレームで
jumpingCountResetが3に戻してるのが見える
つまりisHitToGroundが期待した通りに動作してない
464: 2022/10/27(木)11:49 ID:gXi2+Oha(2/5) AAS
>>462
ちなみに、jumpingFunctionはコメントにしてある。
でこのあとは、3回目という判定と、床に着いたらクリアをつくればいいかと
465: 弟子 2022/10/27(木)11:57 ID:gXi2+Oha(3/5) AAS
まぁこんなんで悩むのは時間の無駄だから答え
moveFunction();
if (Input.GetKeyDown(KeyCode.Space))
{
if (jumpCount > 2) return;
rb.AddForce(rb.transform.up * 5.0f ,ForceMode2D.Impulse);
jumpCount++;
//jumpingFunction();
//print(max_jump_count);
//print(isHitToGround());
}
}
private void moveFunction()
{
//操作方向
float x = Input.GetAxis("Horizontal");
float y = Input.GetAxis("Vertical");
//左右移動
rb.velocity = new Vector2(x * 10, rb.velocity.y);
}
private void OnCollisionEnter2D(Collision2D collision)
{
jumpCount = 0;
}
466(2): 2022/10/27(木)12:06 ID:BXIf+hd4(1) AAS
>>445
その結末がこれなんだぜ
467(1): 2022/10/27(木)14:19 ID:n9F1DQle(2/3) AAS
>>466
雑談スレのおっさんは巣に帰れっていってんじゃん
はっきり言って気持ちわりーよ
468: 2022/10/27(木)15:10 ID:NjCyUsXa(1/3) AAS
>>467
は?イミフ、結果として事実いったまでだが
469: 2022/10/27(木)15:22 ID:NjCyUsXa(2/3) AAS
なぜかIDリセットされたわ
>466な
まさかマジでわからないで終わるかって素直な感想な
470(1): 2022/10/27(木)15:22 ID:+6jYo91a(1) AAS
結果?過程だぞ
スレは常に変化する
まだまだ続いていくしこれからどうなるかは君達次第だ
471: 2022/10/27(木)15:30 ID:NjCyUsXa(3/3) AAS
>>470
他のまともな質問者や解答者にとってはそうだろう
以前の質問スレに戻ることを祈るよ
472: 2022/10/27(木)17:36 ID:gBSo1FaA(2/6) AAS
>>457
勉強中です
学習曲線あるんで、コツコツやります
473(1): 2022/10/27(木)18:11 ID:gBSo1FaA(3/6) AAS
>>458
どうも コピーして使わせてもらいます
どこが原因だったんでしょうか
474(1): 2022/10/27(木)19:12 ID:gBSo1FaA(4/6) AAS
画像リンク
unityの基本について知りたいのですが、スクリプトがグレーアウトして変更できないのはどうしてなんでしょうか
475(1): 2022/10/27(木)19:26 ID:CHZE3YWL(1/3) AAS
>>474
それを変える意味ってなんだろう?
476(1): 2022/10/27(木)19:38 ID:gXi2+Oha(4/5) AAS
ナゼ質問に質問で返すかなぁ
初心者イジメ好きなの?
477: 2022/10/27(木)19:47 ID:CHZE3YWL(2/3) AAS
>>476
まじで謎なんだが
例えば「スクリプト内を編集したい」なら「その欄は関係なくてプロジェクトウィンドウから
スクリプトファイルを開いたら編集できるよ」と答えられるし
例えば「スクリプトファイルのファイル名を変更したい」なら
「プロジェクトウィンドウ上でファイルの名前を変更した上で、
ファイルを開いてクラス名を変更する必要がある」と答えれる
478(2): 2022/10/27(木)19:55 ID:gBSo1FaA(5/6) AAS
>>475
他のスクリプトに差し替えたいことがあるからです
479: 2022/10/27(木)19:55 ID:bQ7WgbrX(2/2) AAS
そういう時の答えって全世界共通でドンピシャなものがあるんだよな
そういうものです
480: 2022/10/27(木)19:58 ID:CHZE3YWL(3/3) AAS
>>478
差し替えたいなら別のスクリプトを作るしかないんじゃね
481: 2022/10/27(木)20:03 ID:n9F1DQle(3/3) AAS
それデバッグモードなら差し替えれるよ確か
482(3): 2022/10/27(木)20:03 ID:3+ePgOaN(1/2) AAS
>>473
まずisHitToGround()が上昇=falseでないとjumpingCountResetでコケる
3→2→3が無限ループして進まない
falseにするとセットでswitch文のisHitToGroundと矛盾するので外しておく
第二にcountがfloatだとfloatの1f==1f...2f==2f...etc は成立する保証がなくなる
1fと言っているのは1.000001などの近似値である可能性があるので==演算子による比較が出来ない。
即ちfloatのswitch文は正常に動作する保証がないので運が良ければ動くかもしれないし悪ければダメかもしれない
結局こう直せば動く事は動く
外部リンク:ideone.com
最初はチュートリアルなどで実際に動作するスクリプトを変更して
どこを変更したら動かなくなるのか1つ変更しては実行して
変更と実行を1対1で原因と結果を理解する必要がある
あととにかく確認を確実にする そもそも事実関係を確認せずに予想で動いて動かないとか
酷い目にあってるのだから、確認出来ている事と確認出来てない事をちゃんと分類して
何が分かっていて何が分かってないのか把握するように努めよう
分からない事が駄目なのではなく、放置したり誤魔化したりするのが問題なのであって
そういう誠実さを自分にも相手にも持った方がいいかもね
483(1): 2022/10/27(木)20:12 ID:3+ePgOaN(2/2) AAS
>>478
知らんけど、フィールドはシリアライズされてymlで格納してるから、
参照先を変えたらymlが壊れて再構築する事になるから変えられなくしてあんじゃね?
フィールドが同一である保証はないから破棄が妥当でしょ
それから書いてない事は基本的に出来ないから、ない機能を自分の都合で捻じ曲げるのは
ナンセンスだとは思わないのかい
484: 2022/10/27(木)20:18 ID:gBSo1FaA(6/6) AAS
>>483
新しく追加する方式なんですね 了解
485(1): 2022/10/27(木)20:36 ID:XV9oO4L8(1) AAS
日本語だと検索しても出てこないけど、同じような疑問は大抵外人が丁寧に答えてるよ、試しにunity editor script component grayed out で検索するとちゃんと出てくる、というか自分も検索するまで知らなかったし
上下前次1-新書関写板覧索設栞歴
あと 517 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ
ぬこの手 ぬこTOP 0.024s