[過去ログ] 【ゲームエンジン】Unity初心者質問スレBuild3 (1002レス)
上下前次1-新
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
233: 名前は開発中のものです。 [sage] 2020/01/24(金) 23:40:43.33 ID:+Fsi074W(9/11) AAS
このバグの発動条件が
左右キーを押しっぱなし中に「ジャンプした」あと死亡したらと思っていたんですが
違いました。
なんと、左右キーを押しっぱなし中に
「キーボードの他のボタン(どれでも)を押した」あと
死亡したらでした!!!
なんと、ゲームで使ってないキーを押しても、この症状が出ます!!!
これはどういうことでしょうか???????????
234(2): 名前は開発中のものです。 [sage] 2020/01/24(金) 23:42:33.68 ID:rtAyfksW(2/2) AAS
シーンを移動するとInputがリセットされる件
で検索
url貼ろうとするとNG食らうので
235: 名前は開発中のものです。 [sage] 2020/01/24(金) 23:45:43.21 ID:+Fsi074W(10/11) AAS
>>232232(1): 名前は開発中のものです。 [sage] 2020/01/24(金) 23:39:22.19 ID:YxoFqWNA(2/2) AAS
>>221
1. 方向キー(←押しっ放し)
2. スペース
3. スタート
これで最初の方向キーの入力が消えるってことなら、
安物のキーボードはそこまでの同時入力に対応していないからなとしか
Unityの問題でなくパソコンの仕様だよ
>これで最初の方向キーの入力が消えるってことなら
いや、私の説明を誤解してます。
2. スペース
の後も「1. 方向キー(←押しっ放し)」は生きてます。
そのままその方向に歩いていくし、放せば止まります。
ただ、1.を押しっぱなしのままで歩いて敵に当たったりして死亡したあと
再スタート後に利かなく(Input.GetAxisRawが左右を認識しない)なってるんです。
押しっぱなしのままなら、です。
説明が難しい。。。
236: 名前は開発中のものです。 [sage] 2020/01/24(金) 23:55:45.35 ID:+Fsi074W(11/11) AAS
>>234
検索して拝見しましたが
非常に勉強になるブログでした。
しかし自分のケースと少し違う気がしますがどうですか?
なぜなら、自分のケースは
確かに二つ目のキー入力をしますが
その後、その二つ目を放して、シーンを移動します。
つまりシーンをまたぐ時はキー入力は1つなんです。
そのブログのケースと違う気がするのですがどうですか?
あと、もひとつ言いますと
ゲットキーの設定関係なく、
二つ目のキーはパソコンのどのボタンでも
押したら発生します。。。
つまり、
Input.GetAxisRaw("Horizontal")
で右方向キーを入力したまま
パソコンの「w」だの「s」だのどこでも押したあと
(それこそ"Horizontal"では受け付けてない上キーとかでも)
右方向キーを入力したまま死亡して
シーンをやり直すと
右方向キーを入力が利いてない状態でスタートするんです。
237: 名前は開発中のものです。 [sage] 2020/01/25(土) 00:44:13.23 ID:lrP57LvS(1/6) AAS
これはもう熟練者様に確認してもらいたいので
シンプルにしたものをパッケージ化しました。
これで症状を確認していただけませんでしょうか。
外部リンク:ux.getuploader.com
まずは
ゲーム開始して、右キーを押しっぱなしで死んでください。
リスタートしても右キーを押しっぱなしです。
そしたらリスタートしてもプレイヤーは右に進むはずです。
そりゃそうです、右キーを押しているからです。
次に、
右キーを押しっぱなしで死ぬのは一緒ですが
その途中に、パソコンのキーボードをどれかひとつ、押してください。
そっちは押しっぱなしでは無く、一度押すだけです。
この間も右キーの方は押しっぱなしです。
で、そのまま死んでください。
すると、リスタート後、プレイヤーは先ほどとは違い
右に進まないんです。右を押している限り、移動はできません。
右を押しながらジャンプはできますが、右を押している限り、移動はできません。
この症状の原因を知りたいです。 ◎
Rock54: Caution(BBR-MD5:669e095291445c5e5f700f06dfd84fd2)
238: 名前は開発中のものです。 [sage] 2020/01/25(土) 00:47:53.82 ID:lrP57LvS(2/6) AAS
ちなみにバージョンは2018.4.11f1です
239(1): 名前は開発中のものです。 [sage] 2020/01/25(土) 09:41:49.47 ID:6e7MKbrk(1/3) AAS
とりあえずもっとシンプルにして修正したよ
外部リンク:thuploader.orz.hm
恐らく原因はLoadSceneでしょ、シーンロードするという事はそれまで居たシーンは
リセットされると思う、だから入力が利かなくなるんじゃないかな
とりあえず同シーンリスタートしたら問題なく出来た
それから、コライダーとか整理した方がいいかな同じオブジェクトに二つ付いてたり
場所かぶっていたり、なんか無駄がおおかった
240: 名前は開発中のものです。 [] 2020/01/25(土) 09:43:38.51 ID:6e7MKbrk(2/3) AAS
あ、ちなみに制作は
2019.2.17f1で取り込み確認、パッケージ化
2019.2.5f1でも確認
2018年バージョンは当方もうすててたので、未確認
でも特にバージョン違いの事してないから問題ないと思います
241(2): 名前は開発中のものです。 [] 2020/01/25(土) 09:53:45.45 ID:6e7MKbrk(3/3) AAS
>>293>恐らく原因はLoadSceneでしょ、シーンロードするという事は
すまん、これ原因究明してないから、これが原因かどうか不明なので
ちょい出かけるからまた戻ったらシーン展開でも症状確認してみるわ
242: 名前は開発中のものです。 [sage] 2020/01/25(土) 10:51:31.73 ID:lrP57LvS(3/6) AAS
>>239
ありがとうございます
修正感謝します
確認してみます!
>シーン展開でも症状確認してみるわ
はい!もちろん修正されたものを見て自分でも原因を考えてみますが
ぜひとも宜しくお願いします。
243: 名前は開発中のものです。 [sage] 2020/01/25(土) 11:51:30.29 ID:52iKK3mn(1) AAS
優しいスレ
244(1): 241 [sage] 2020/01/25(土) 13:15:17.01 ID:AAVfnYWp(1) AAS
画像リンク
こんな感じでリスタートでLoadSceneしてみたら、症状でましたね
LoadSceneAsyncでも同様なので、やはりシーンロードするとバッファが詰まるのでしょかね
とりあえず途中経過です
なぜLoadSceneでキー2つ目押でなるのかについてはなんか大変そうだな根本原因掴むのは
245(1): 名前は開発中のものです。 [sage] 2020/01/25(土) 13:30:42.22 ID:4hPFEDML(1) AAS
>>234 の記事がそのまんま答えじゃない?
この記事によると「シーン遷移時にInputはリセットされる」というのが仕様で
今回の場合「シーン読み込みしてるのに横移動入力が拾えてた」というのがむしろバグらしい
で、ちょっと試してみたけど
Inputを拾うオブジェクトをDontDestroyOnLoadにして破棄しないようにしても
普通にシーン遷移を行うとInputはリセットされてしまうようなので
どうしてもシーン読み直しで、かつInputを継続して拾いたいなら
>>234 の記事にあるようにLoadSceneでLoadSceneMode.Additiveで読み込むしかなさそう。
ただ、もし自分だったら
・シーンの読み込み直しなしでリスタートを実装する
・リスタート時に方向キーから指が離れるような演出にする
・気にしない
のどれかにすると思う
246: 名前は開発中のものです。 [sage] 2020/01/25(土) 14:50:49.41 ID:rO5N4tZX(1) AAS
シーンごとのリセットは
アクションゲームなら必須に近いし
ゲーム制作に支障が出そうな仕様だなぁ
247(1): 名前は開発中のものです。 [sage] 2020/01/25(土) 20:13:13.83 ID:lrP57LvS(4/6) AAS
>>244
>やはりシーンロードするとバッファが詰まるのでしょかね
>>245
>シーンの読み込み直しなしでリスタートを実装する
その様子だとロックマン系のアクションゲームとかでよくある
プレイヤーが一画面分ずつ画面切り替え(切り替わり後、敵が定位置から発生)で
移動する場面などのときに
方向レバーの入力がいちいち途切れて
スムーズなキャラの移動みたいなんができないって
ことですよね?
まだ試してないのでなんとも言えませんが、、、
というかscene遷移って
それこそタイトル画面からゲーム画面にいったりするところでも使いますし
シーン遷移のたびいちいち方向レバーからの入力を途切れさせるって仕様自体
どうなんでしょうか、、、なんかテンポ悪い気がするんですが、、
これだけ痒いところに手がとどくUnityにおいて
GetAxisRawに対してscene遷移時の細かな設定ができないとは、、・
できそうなもんですが、、、
248: 名前は開発中のものです。 [sage] 2020/01/25(土) 20:13:46.52 ID:lrP57LvS(5/6) AAS
で、今パッと思いついたのはグローバルな変数に
シーン切替前の瞬間の方向キーの値を確保しておいて
切り替え後の最初だけのその方向キーの値を
入れ込んでやるって感じにしてやれば、、どうでしょう??
とりあえずそういうノリで一度打開できるか試してみます。
249: 名前は開発中のものです。 [sage] 2020/01/25(土) 20:16:17.57 ID:lrP57LvS(6/6) AAS
>>241さん、修正パッケージありがとうございます
原因究明はともかく修正したソースを見せていただき
なるほどーって感じでこちらは大変勉強になりました。
250: 名前は開発中のものです。 [sage] 2020/01/25(土) 20:16:32.82 ID:AC7xcaw6(1) AAS
/i/|ii!//|!/!i/´i/ .|i |/ノ i\i!゙、:iヽ|:::| ヽ 'i ! ヾi |'!ヽ::::||::::::/:::::::::::::::::::::ヽ
i i 川i!ハ/" _! | │ 川 ヾ:ii ゙'∨ | ゙ヾiヽヽ;||:::::i':::::::::::::::::::::::::
ノ ノ/リ,,,,,,二三テ=''" ヽノ ル |ノノヽヾ ノ 、,,,ノ,、 iヽ:::||:::::i'::::::::::::::::::::::::::::
/  ̄ ´~~゙'''' ゙''‐- ..,, ,, ‐' `゙ヾミッ、,, ヽ::|::::/::::::::::::::::::::::::::::
,,イ| i' i" `'‐=' `'|/i!:::::i::::::::::::::::::::::::
i | :::::::ヽ::::ヽ::::::ヾ:: ゙、 l 〃::::: i//::::ハ::::::::::::::::::i:::
i i \\\\\ヽ ) ヽ ′′′ / /:::::/:::::::::::::::::::|::::
! | i ,,ィノ < :::: : /:::::/:::::::::::::::::::/::::
i! i i! /i/ ,r''''‐y'''.;、 \ /:::::/:::::/::::::::::::/:::::
゙i! | i /⌒' 、 Y:::::::::''::;;;;'.;.Y'⌒゙i /::::::/::::::/::::::::::::/::::/i
i i ゙! ん、,,__ヽノ:::::::::::::::::::;;;;;{,__,,,r'' /:::::::/::::::/::::::::::::/:::外部リンク:
゙、ii! ゙| i ノ ゝ;;;:::::::::::::::::::;ノ 。 `i //:::::/:::::/::::::::::::/::::::/:::
ヾ!トl ゙i?U i 。l '゛.. ‐ー:::::i | //::::::/::::::/::::::/:::/:::::i!::::::
iiミ! ハ i l ,,,,::: :::;;;;;...{ ° ゙、 //::::外部リンク:::::
i!ヾ!i ゙、! , ' |::: ::::ヽ ..} |゙ヽ......,.,.,.,,,///://::外部リンク:::::リ::
!ヽヾi i゙、 ___,,,/ }:: : ;;;::: ::::::::} レWノ'レi/、//::/:://:/:::/::/:::ハ:i |::
251(1): 名前は開発中のものです。 [sage] 2020/01/25(土) 20:45:50.43 ID:JCoOqUSR(1) AAS
>>247
お前が言ってるロックマンのパターンでは
シーンをわけんなってことだよ
252(1): 名前は開発中のものです。 [sage] 2020/01/25(土) 21:10:01.15 ID:7xtf6OfK(1) AAS
Input.GetButtonDown
InputGetButtonUp
でいかんの?
253: 名前は開発中のものです。 [sage] 2020/01/25(土) 22:10:27.57 ID:aeB2xTib(1/2) AAS
3Dの坂道だけど、
normalVector = collision.contacts[0].normal; で取れる値が、
坂メッシュの下から接触する時と、坂メッシュの上から接触する時に違うのはなぜだろう?
下から接触は登れるが、上から接触は"上れない"
254(1): 名前は開発中のものです。 [sage] 2020/01/25(土) 23:07:40.70 ID:aeB2xTib(2/2) AAS
自己解決した。
CollisionEnter 一回では法線の正確な値が取れなかった…
255: 名前は開発中のものです。 [sage] 2020/01/26(日) 00:40:30.63 ID:2uuxF2Qq(1/3) AAS
>>254
イイね!
256(2): 名前は開発中のものです。 [sage] 2020/01/26(日) 03:45:46.72 ID:wmtOSy96(1) AAS
>>252
InputGetButton
期待してやってみましたがダメでした。
>>251
ということですよね
sceneをまたぐと入力が切られること自体クソ仕様なのか
自分がこのタイミングでscene遷移を利用することがクソ思考なのか
未熟者の自分には判断ができません。
そもそも全体のリスタートにscene遷移する必要があるのか否か
scene遷移が必要な場面などについてしばらく勉強したいと思います。
レスくださった皆さまありがとうございました。
257(1): 名前は開発中のものです。 [] 2020/01/26(日) 07:48:04.40 ID:Fvh37rHc(1/2) AAS
Unityエディタ上からGameObjectに対してEventTriggerを追加するのではなく、スクリプトからGameObjectに対してOnPointerClickを追加するには、どのようにすればよいのでしょうか?
GameObjectに対して、コライダーを追加して、下記の様にIPointerClickHandlerをインプリメントしたスクリプトを追加しても、OnPointerClick()が呼び出されません。
どの様にすれば良いでしょうか?
class Boo : MonoBehaviour,
IPointerClickHandler,
{
public void OnPointerClick(PointerEventData eventData)
{
}
}
上下前次1-新書関写板覧索設栞歴
あと 745 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.027s