【ゲームエンジン】Unityなんでも質問スレpart8

■ このスレッドは過去ログ倉庫に格納されています
2022/09/18(日) 16:56:40.15ID:gIPS4wgi
フリー版で開発したゲームは個人・法人を問わず追加のロイヤリティーなしで販売できます。 プラットフォームサポートはiPhone/iPod Touch/iPad、Mac、PC、Web、Wii、Xbox360、Android、PlayStation 3、PlayStation 4、PS Vita他

■注意事項
特になし
■Unity 2ch Wiki(まとめ、過去ログ、リンク集)
http://www24.atwiki.jp/unity2ch/
●リンク
・Unity(日本公式サイト)
http://unity3d.com/jp
・マニュアル
 http://docs.unity3d.com/ja/current/Manual/index.html
・チュートリアル
 http://unity3d.com/jp/learn/tutorials
・スクリプトリファレンス
 http://docs.unity3d.com/ja/current/ScriptReference/index.html
・FAQ
 http://unity3d.com/jp/unity/faq
・MSDN
 http://msdn.microsoft.com/ja-jp/ms348103←スクリプトのエラー番号をこれで検索すると原因が日本語で出てきます。


前スレ

【ゲームエンジン】Unityなんでも質問スレpart6(part7)
https://mevius.5ch.net/test/read.cgi/gamedev/1648986423/
400名前は開発中のものです。
垢版 |
2022/10/24(月) 16:12:38.97ID:MUSucqH+
ありがと
デバッグ素早く出来ないと効率的に作れないっすね
これだけで1日時間潰すとか無駄
401名前は開発中のものです。
垢版 |
2022/10/25(火) 11:34:16.37ID:4iFfIKI+
https://kan-kikuchi.はてなblog.com/entry/ValueBetweenChecker
値が特定の範囲内に収まっているかどうかを、boolで返す関数ってないでしょうか?
これをif文に使いたいのです
2022/10/25(火) 11:48:22.21ID:c6b67Equ
>>401
作ればいいだけ
簡単だよ

bool RangeCheck(float valueH,float a,float b){
if(valueH>a && valueH<b) return true;
return false;
}
2022/10/25(火) 12:15:54.49ID:zKUBISvI
???
こんなの作れなきゃ、これから一体なにを作るつもりなんだ?
1から10までここで質問するつもり?????????
404名前は開発中のものです。
垢版 |
2022/10/25(火) 12:30:01.34ID:4iFfIKI+
>>402
どうも
そもそもこれをやろうとしているのは、特定の範囲内でのみ発動したいアクションがあるからです
たとえば0から3の間でのみ発動するなど

しかし、そもそもclampなどで想定外の値にならないように0-3の範囲に固定したほうがいいのでしょうか?
2022/10/25(火) 12:33:43.32ID:c6b67Equ
>>404
それだと4が入ってる時3になったり、5が入ってる時3になったりになってしまうが
その仕様で正しいならそうすれば?
406名前は開発中のものです。
垢版 |
2022/10/25(火) 13:47:21.16ID:4iFfIKI+
>>405
そうですね 3段ジャンプのカウントにつかいます
そもそも4-5やマイナス値は必要ないので
407名前は開発中のものです。
垢版 |
2022/10/25(火) 13:54:53.01ID:2aKWWgbi
intでインクリメントしてn%2にすれば0か1か2以外入らなくなる
こんなのチュートリアルで頻繁に出て来るのに何で車輪の再発明してんだか
頭の体操が目的なら人に頼るのは意味がない
408名前は開発中のものです。
垢版 |
2022/10/25(火) 14:16:38.83ID:sgdVEix0
三段ジャンプなら範囲で撮る必要ないくらいの
409名前は開発中のものです。
垢版 |
2022/10/25(火) 14:19:22.40ID:sgdVEix0
誤送信

3段ジャンプならわざわざ範囲でとらないでいい

ジャンプ回数を外から見えないようにして
クラス内で消費すれば範囲制限いらない
2022/10/25(火) 14:24:47.10ID:ihTVMvOj
仕様書いたら作ってくれると思ってんだろ。
ここには便利な道具が大勢いるしな
2022/10/25(火) 14:28:49.22ID:XU5o4p00
お気持ち表明のがよっぽど非生産的だろ…
2022/10/25(火) 14:38:31.81ID:u6ZxnSwp
たれw
413名前は開発中のものです。
垢版 |
2022/10/25(火) 15:10:42.81ID:4iFfIKI+
>>407
余剰演算子でそんなやり方あるんすね
カウント管理に使えますかね

>>409
まあそうします
特定のタイミングでリセットすればいいだけなので
仕様にこだわりすぎてもッ完成しなくなりそうですね
2022/10/25(火) 17:44:01.11ID:VUZkNIaf
まずは自分の思う方法で実装すりゃいいよ
2022/10/25(火) 18:07:00.94ID:Nv2MgXa1
>>411
生産する気も無い奴のクイズに付き合う方がもっと非生産的だろ…
2022/10/25(火) 19:58:25.94ID:3sgdGPsD
なんでも質問スレでなんでも質問すんなは草
417名前は開発中のものです。
垢版 |
2022/10/25(火) 20:37:43.56ID:sgdVEix0
>>415
雑談スレに引きこもってろクソジジイ
2022/10/25(火) 20:55:09.98ID:8vbifLqe
図星つかれてブチギレすぎて草
2022/10/25(火) 20:58:27.73ID:8vbifLqe
まあいいじゃねーかw

自分の時間の使い方なんて自分の自由なんだからさw
2022/10/25(火) 22:09:10.85ID:4ztAREYl
>>416

世の中なんにでも限度というものがあってだな、、、
2022/10/25(火) 22:22:37.66ID:c6b67Equ
俺はできるやつとできないやつの違いはしょうもない知識の積み重ねだと思ってるから
しょうもない質問にもどんどん答えるけどな
それと「質問に答える」といういつもと違う体験をすることでその知識に関して
自分の中で肉付けができる
2022/10/25(火) 22:40:38.41ID:ON2a/FLH
お前ら難しい質問はスルーしてんじゃん?このスレの課題は回答者のレベルが低すぎることだわ
Unity認定プロフェッショナル以上を持ってる人以外のゴミクズカスは回答すんなや?(´・ω・`)

Unity認定ユーザー : プログラマー
Unity認定ユーザー : アーティスト
Unity認定ユーザー : VR開発者
Unity認定アソシエイト : ゲーム開発者
Unity認定アソシエイト : プログラマー
Unity認定アソシエイト : アーティスト
Unity認定プロフェッショナル : プログラマー
Unity認定プロフェッショナル : アーティスト
Unity認定エキスパート : シェーディングとエフェクトのテクニカルアーティスト
Unity認定エキスパート : リギングとアニメーションのテクニカルアーティスト
Unity認定エキスパート : プログラマー
2022/10/25(火) 22:56:03.76ID:4ztAREYl
>>421

>しょうもない質問

アッ、、、ハイ。
2022/10/25(火) 23:15:14.79ID:VUZkNIaf
>>420
限度を勝手に決めるな
2022/10/25(火) 23:19:51.20ID:fG1n0hZT
乞食が選り好みを始めて草
回答者云々じゃなくてそもそも専門的に教えて貰える所に行けよ
426名前は開発中のものです。
垢版 |
2022/10/25(火) 23:37:10.62ID:xEvb7jm/
>>422
授業料をケチった結果ランクがバンバン下がっただけで自業自得だろ
有資格者が教えてくれるセミナー行けよ 遠慮すんなや
427名前は開発中のものです。
垢版 |
2022/10/26(水) 01:01:09.85ID:8WC+Jm0M
unityでゲームはつくれますか?
2022/10/26(水) 01:12:20.39ID:+8eD0HEY
難しいですね
2022/10/26(水) 01:25:40.42ID:8WC+Jm0M
>>428
どうも
アセットのモデルでゲーム作ってもですか?
2022/10/26(水) 01:26:30.44ID:+8eD0HEY
うーん難しいですね
2022/10/26(水) 01:26:51.16ID:phxiZASO
まずやってみてはどう?
432名前は開発中のものです。
垢版 |
2022/10/26(水) 01:29:03.88ID:8WC+Jm0M
unityでrpgってあまりおすすめされないのかね?
2022/10/26(水) 01:32:14.89ID:phxiZASO
チュートリアルにもローグライクあるよ
434名前は開発中のものです。
垢版 |
2022/10/26(水) 01:33:28.26ID:8WC+Jm0M
ありがと
二番煎じでもとにかく作ることは大事だよな!(´・ω・`)
なぜ?
2022/10/26(水) 01:39:32.75ID:+8eD0HEY
それも厳しいものかと思われます
2022/10/26(水) 01:40:34.42ID:8WC+Jm0M
>>431
そうですね 1本完成させてからくるわ (´・ω・`)クソゲーで何が悪い?
2022/10/26(水) 11:12:09.45ID:DT/daO77
糞スレ
438名前は開発中のものです。
垢版 |
2022/10/26(水) 14:00:25.36ID:b6AX5R9p
拡張がないとvscodeでのステップ実行は不可能なんでしょうか?
439名前は開発中のものです。
垢版 |
2022/10/26(水) 14:32:58.13ID:b6AX5R9p
3段ジャンプ作っています。
初歩的かつ、頭悪いですが、混乱しているので対策を教えてください

問題点:
1回目の押下ではジャンプ出来るが、2回目の押下ではジャンプ出来ない

原因:
2回めの押下でリセット関数が働いて、max_jump_countが3になっていて、case2が発動されないことが原因思われます

コード:
https://ideone.com/rWJtbx

補足:

3段ジャンプ、もっとマシなやり方あるんでしょうか
2022/10/26(水) 15:34:03.20ID:mhQKrFwX
>>439
色々あるがまず
isHitToGround()関数は正常に機能してるか?
ここで仮に「常にtrueが返るバグがある」とかだと68行目のif文で
チェックされて空中ジャンプに移行しない
それとジャンプのカウントをswitch文で遷移させるのは頭がおかしいぞ
2022/10/26(水) 15:48:05.88ID:mhQKrFwX
>>440これは違うか

>>439
ジャンプした直後にjumpingCountReset()関数でmax_jump_countを
3に戻すのが悪い
例えばジャンプの上昇中はjumpingCountReset()を呼ばないようにするとかの
方法がある
ジャンプカウントのリセットが必要なのは常にキャラの加工中だからね
2022/10/26(水) 15:56:09.34ID:LM/DaEJN
え?そこ?・・・つーか、今までのレスのやりとりは何だったの?
もう書き直した「答え」出してって言ってるようなもんじゃんよ・・・
443名前は開発中のものです。
垢版 |
2022/10/26(水) 16:29:10.48ID:BRmbUSwY
>>442
指導したい人がやってるんだから粗探しせず、スルーでイイんじゃないの?
2022/10/26(水) 16:44:48.95ID:LM/DaEJN
>>443
スマネ・・・つい口から出ちまった
変数・代入・分岐・関数・引数・戻値・・・つーかフローやら変数関数の有効範囲の基礎知識どうなってんの?だったので、
・・・以後気を付けます
2022/10/26(水) 16:47:10.54ID:gghaiF0A
なんでも質問スレだからな、上の質問はもちろん、質問に対する疑問の声も大歓迎なんだぜ
それが何でも来いってことだぜ
2022/10/26(水) 16:50:59.22ID:LM/DaEJN
いや・・・俺はもう退散します・・・たぶん俺にはもう必要ないとおもうので>>443の言う通りスルーしますね
447名前は開発中のものです。
垢版 |
2022/10/26(水) 17:49:00.89ID:b6AX5R9p
>>441
ジャンプした直後にjumpingCountReset関数で3に戻っているのはなぜでしょうか?接地していないから戻っていないはずですが、、、。
あと、ジャンプのカウントはswitch使わないとしたらどう管理するのがセオリーなんでしょうか
2022/10/26(水) 17:59:00.31ID:mhQKrFwX
>>447
ジャンプした直後もまだキャラクターはちょっとしか動いてない
したがってこのプログラムの接地判定に引っかかる
これは長さが1fのレイを下に伸ばしてる
だから1フレームで1以上上昇しないと接地してる判定になる
そしてカウントが元に戻る羽目になってる
2022/10/26(水) 18:00:44.29ID:mhQKrFwX
>>447
後者に関しては俺はこのケースではカウンターが0以上ならジャンプできるようにするだけ
2022/10/26(水) 18:04:36.26ID:mhQKrFwX
ところでカウンターはfloat型ではなくintにした方がいい
基本的にコンピュータは小数を扱うのが苦手で誤差が生まれるからね
2022/10/26(水) 18:12:49.91ID:phxiZASO
てか計算しなくて状態を持ってればいいだけのような
452名前は開発中のものです。
垢版 |
2022/10/26(水) 19:33:02.81ID:b6AX5R9p
>>448
な、なるほど
そこは気づかなかったです

キャラのコリジョンから都合よく1pxだけ伸ばすなんてこのしないですもんね。

ベロシティが+値の場合を上昇とみなして見ますが。他のやり方はありますか?
2022/10/26(水) 19:53:00.23ID:mhQKrFwX
>>452
タイマーを使う方法がある
ジャンプ時にタイマーをセットして接地判定を許すタイミングで接地判定可能フラグを
オンにする
2022/10/27(木) 00:20:56.68ID:sgaEp23q
>>450
これで、switch文も解決しましたー!とか言ってきたら流石に白目なる
455名前は開発中のものです。
垢版 |
2022/10/27(木) 09:14:09.07ID:gBSo1FaA
isHitToGround内で下降中のみレイを飛ばすように対策しましたが、2回目の押下でカウントが3になっちゃいますね
3に戻す部分はリセット関数しかないので、底が悪さしているのは確実なのですが

もうわからないです
https://ideone.com/LFiAQy
456名前は開発中のものです。
垢版 |
2022/10/27(木) 09:50:38.96ID:8Wq4UzIH
Mathf.Sign(rb.velocity.y) == 1


Mathf.Sign(rb.velocity.y) == -1

じゃないの?
457名前は開発中のものです。
垢版 |
2022/10/27(木) 10:10:20.76ID:n9F1DQle
適当に書いてみた

とりあえず状態外に見えないようにして
使えるかどうかだけ確認するのが楽だし
衝突は2DならcontactFillterでいい

https://ideone.com/ytv2rb

俺は本職でもないただの無職だが
このくらいは自前で書けるように勉強しないと
ミニゲームすらままならないゾ
2022/10/27(木) 10:27:22.91ID:Mb1soW9V
まぁバグは本人が意識出来てる動作と実際の計算が異なる事で発生する
人為的なミスなので死角からハリセンが飛んでくるのに近い
https://ideone.com/JZNPgr

velocityはプロットすると分かるが収束するまで結構暴れるからOnCollisionEnter2D一択だろうね
2022/10/27(木) 11:09:45.24ID:El3K99WE
>>457
>このくらいは自前で書けるように勉強しないと

正にこれだと思うわ
2022/10/27(木) 11:25:28.16ID:Ccb5Bjo8
もうわからないです
と言ってるからここが終着点なんだろう
2022/10/27(木) 11:34:53.15ID:bQ7WgbrX
どうでもいいけど要件整理って大事だと思う
462弟子
垢版 |
2022/10/27(木) 11:39:10.68ID:gXi2+Oha
久しぶりだな

まずさシンプルにいこう、逆に考えてみるか
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);
}
https://i.gyazo.com/e36cc76a809b1d8bfab8303cd513ff04.png

これでスペース押すと、ジャンプ繰り返すんだけど
3回目で押せなくすればいいかなと
2022/10/27(木) 11:39:21.08ID:1clBHIjw
デバッガで追えばjumpingFunctionが2にしたのを同一フレームで
jumpingCountResetが3に戻してるのが見える
つまりisHitToGroundが期待した通りに動作してない
464名前は開発中のものです。
垢版 |
2022/10/27(木) 11:49:17.46ID:gXi2+Oha
>>462
ちなみに、jumpingFunctionはコメントにしてある。

でこのあとは、3回目という判定と、床に着いたらクリアをつくればいいかと
465弟子
垢版 |
2022/10/27(木) 11:57:08.00ID:gXi2+Oha
まぁこんなんで悩むのは時間の無駄だから答え

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;
}
2022/10/27(木) 12:06:36.34ID:BXIf+hd4
>>445
その結末がこれなんだぜ
467名前は開発中のものです。
垢版 |
2022/10/27(木) 14:19:47.91ID:n9F1DQle
>>466
雑談スレのおっさんは巣に帰れっていってんじゃん
はっきり言って気持ちわりーよ
2022/10/27(木) 15:10:50.99ID:NjCyUsXa
>>467
は?イミフ、結果として事実いったまでだが
2022/10/27(木) 15:22:21.27ID:NjCyUsXa
なぜかIDリセットされたわ
>466な
まさかマジでわからないで終わるかって素直な感想な
2022/10/27(木) 15:22:35.60ID:+6jYo91a
結果?過程だぞ
スレは常に変化する
まだまだ続いていくしこれからどうなるかは君達次第だ
2022/10/27(木) 15:30:23.72ID:NjCyUsXa
>>470
他のまともな質問者や解答者にとってはそうだろう
以前の質問スレに戻ることを祈るよ
472名前は開発中のものです。
垢版 |
2022/10/27(木) 17:36:07.86ID:gBSo1FaA
>>457
勉強中です
学習曲線あるんで、コツコツやります
473名前は開発中のものです。
垢版 |
2022/10/27(木) 18:11:35.73ID:gBSo1FaA
>>458
どうも コピーして使わせてもらいます
どこが原因だったんでしょうか
474名前は開発中のものです。
垢版 |
2022/10/27(木) 19:12:12.87ID:gBSo1FaA
https://i.imgur.com/eITlNaJ.jpg
unityの基本について知りたいのですが、スクリプトがグレーアウトして変更できないのはどうしてなんでしょうか
2022/10/27(木) 19:26:07.77ID:CHZE3YWL
>>474
それを変える意味ってなんだろう?
2022/10/27(木) 19:38:02.47ID:gXi2+Oha
ナゼ質問に質問で返すかなぁ
初心者イジメ好きなの?
2022/10/27(木) 19:47:53.55ID:CHZE3YWL
>>476
まじで謎なんだが
例えば「スクリプト内を編集したい」なら「その欄は関係なくてプロジェクトウィンドウから
スクリプトファイルを開いたら編集できるよ」と答えられるし
例えば「スクリプトファイルのファイル名を変更したい」なら
「プロジェクトウィンドウ上でファイルの名前を変更した上で、
ファイルを開いてクラス名を変更する必要がある」と答えれる
478名前は開発中のものです。
垢版 |
2022/10/27(木) 19:55:34.98ID:gBSo1FaA
>>475
他のスクリプトに差し替えたいことがあるからです
2022/10/27(木) 19:55:44.35ID:bQ7WgbrX
そういう時の答えって全世界共通でドンピシャなものがあるんだよな

そういうものです
2022/10/27(木) 19:58:35.64ID:CHZE3YWL
>>478
差し替えたいなら別のスクリプトを作るしかないんじゃね
481名前は開発中のものです。
垢版 |
2022/10/27(木) 20:03:23.77ID:n9F1DQle
それデバッグモードなら差し替えれるよ確か
2022/10/27(木) 20:03:40.91ID:3+ePgOaN
>>473
まずisHitToGround()が上昇=falseでないとjumpingCountResetでコケる
3→2→3が無限ループして進まない
falseにするとセットでswitch文のisHitToGroundと矛盾するので外しておく

第二にcountがfloatだとfloatの1f==1f...2f==2f...etc は成立する保証がなくなる
1fと言っているのは1.000001などの近似値である可能性があるので==演算子による比較が出来ない。
即ちfloatのswitch文は正常に動作する保証がないので運が良ければ動くかもしれないし悪ければダメかもしれない

結局こう直せば動く事は動く
https://ideone.com/jvMB27

最初はチュートリアルなどで実際に動作するスクリプトを変更して
どこを変更したら動かなくなるのか1つ変更しては実行して
変更と実行を1対1で原因と結果を理解する必要がある

あととにかく確認を確実にする そもそも事実関係を確認せずに予想で動いて動かないとか
酷い目にあってるのだから、確認出来ている事と確認出来てない事をちゃんと分類して
何が分かっていて何が分かってないのか把握するように努めよう
分からない事が駄目なのではなく、放置したり誤魔化したりするのが問題なのであって
そういう誠実さを自分にも相手にも持った方がいいかもね
2022/10/27(木) 20:12:49.51ID:3+ePgOaN
>>478
知らんけど、フィールドはシリアライズされてymlで格納してるから、
参照先を変えたらymlが壊れて再構築する事になるから変えられなくしてあんじゃね?
フィールドが同一である保証はないから破棄が妥当でしょ

それから書いてない事は基本的に出来ないから、ない機能を自分の都合で捻じ曲げるのは
ナンセンスだとは思わないのかい
484名前は開発中のものです。
垢版 |
2022/10/27(木) 20:18:00.51ID:gBSo1FaA
>>483
新しく追加する方式なんですね 了解
485名前は開発中のものです。
垢版 |
2022/10/27(木) 20:36:23.52ID:XV9oO4L8
日本語だと検索しても出てこないけど、同じような疑問は大抵外人が丁寧に答えてるよ、試しにunity editor script component grayed out で検索するとちゃんと出てくる、というか自分も検索するまで知らなかったし
2022/10/27(木) 21:19:54.42ID:ki8VV8fH
>>485
ほんで外人はなんて答えてたん?
2022/10/27(木) 22:09:08.38ID:yK5/P9Pc
>>482
さんが懇切丁寧に原因について言及してくれてんのに、、悲しくなるな

変数の型な。そしてどのタイミングで値が入るかってデバッグな。
まずは完成されたサンプルを弄るって学習も効果抜群だ。よーーーく分かるぜよ。

料理の仕方を教えるにしても、フォークやスプーンの種類、使い方までとなると大変だな…
2022/10/27(木) 22:16:15.43ID:gXi2+Oha
そういう場所だよ
2022/10/27(木) 22:18:25.77ID:yK5/P9Pc
うそ、だろ、、
前スレのレス番500くらいまではそうでなかったと記憶してるが…
2022/10/27(木) 22:46:52.54ID:RE9zAC6N
無駄に気取ってて気持ち悪いな
491名前は開発中のものです。
垢版 |
2022/10/28(金) 00:12:03.05ID:ooW47g5X
なんでも質問スレだから君の独自ルール知らんし
専門板の怪人感すげーよ
492名前は開発中のものです。
垢版 |
2022/10/28(金) 00:28:13.21ID:W9n61EqZ
質問に答えてくれたらお礼くらい言ってもいいんでね?
2022/10/28(金) 00:30:12.10ID:QjiYToUJ
そんなことは何処にも書いてないぞ
494名前は開発中のものです。
垢版 |
2022/10/28(金) 00:36:27.20ID:W9n61EqZ
自然に出るもんだからね
2022/10/28(金) 00:47:49.26ID:PQ2kHiR/
そんなに人に借りを作るのが嫌なら金払って学校行けばよくね?
2022/10/28(金) 00:51:19.46ID:QjiYToUJ
借りとか昭和の人間ですか?
ここは答えたい奴が答えるだけ
逆に言えば答えさせてやってるんだから、質問者に感謝して欲しいとこだわな
2022/10/28(金) 00:56:48.43ID:ooW47g5X
それもおかしいだろ
てかお前らが1番浮いてるよ

雑談スレから出てくんなマジで
498名前は開発中のものです。
垢版 |
2022/10/28(金) 00:57:52.07ID:W9n61EqZ
質問者の期待通りでない答えのレスでも、流石にスルーは失礼じゃないかと思っただけ、人として
2022/10/28(金) 01:03:20.96ID:5u7xI9bc
人間社会の常識がない奴を人間扱いする必要もないだろ
■ このスレッドは過去ログ倉庫に格納されています