Unityで何かゲームを作りたいんだがね [無断転載禁止]©2ch.net

■ このスレッドは過去ログ倉庫に格納されています
0001名前は開発中のものです。2016/01/06(水) 21:53:44.35ID:coXhTMmW
何かアイディアとかあったら教えてほしいんや

0207弟子2020/06/17(水) 09:03:35.36ID:g/ocbutF
ちなみに現状は最終クリックから0.3秒の間隔で確認しているので
その前に判定したいとか?

0208名前は開発中のものです。2020/06/18(木) 08:52:18.24ID:ZWC38E3l
>>207
すいませんなんか変な勘違いをしてました
いろいろ試したところ、switch構文でダブルとトリプルの判定ができました!
ただ、ダブルタップ後、トリプルタップをするまでのほんの少しの間に
ダブルの方の動作が起きかけて、トリプルタップでトリプルの動作になるといった感じです。

ちなみにこのTapTimeを使う場合、これにどう加えればトリプル判定ができるのでしょうか
両方マスターしておきたいので教えてください。

void Update () {
// double tap
if (isDoubleTapStart){
doubleTapTime += Time.deltaTime;
if (doubleTapTime < 0.2f) {
if (Input.GetMouseButtonDown (0)) {

isDoubleTapStart = false;
ChangeSize (true);
doubleTapTime = 0.0f;
}
} else {
ChangeSize (false);
// reset
isDoubleTapStart = false;
doubleTapTime = 0.0f;
}
} else {
if (Input.GetMouseButtonDown (0)) {
isDoubleTapStart = true;
}
}
}

0209弟子2020/06/18(木) 10:40:59.52ID:HhOkrLW+
>ただ、ダブルタップ後、トリプルタップをするまでのほんの少しの間に

ん?Switch文の関数に行った時には確定なのでこのような動きはないはずだけど
ちょっとそこの部分見せて見てください

0210弟子2020/06/18(木) 10:42:34.66ID:HhOkrLW+
んでそのスクリプトは次のような感じかなぁ
改行多くてのせれないから絵ね
https://i.gyazo.com/2c44586b0f7f63a128a027c64d3bfb8d.png

0211名前は開発中のものです。2020/06/18(木) 18:55:08.00ID:ZWC38E3l
>>209
こんな感じです

void TouchCheck(){
if (Input.GetMouseButtonDown(0))
{
CancelInvoke();
Invoke("CheckCount", 0.3f);
clickCount += 1;
}

switch (clickCount)
{
case 1:
Debug.Log("処理1");
break;
case 2:
2タップの処理;
break;
case 3:
3タップの処理;
break;
default:
Debug.Log("Default");
break;}}}

0212弟子2020/06/18(木) 19:39:46.69ID:HhOkrLW+
void CheckCount()
{
print(clickCount);
clickCount = 0;
}
ここでプリントしてるからここにSwith文を入れるよ
こんな感じ
void CheckCount()
{
print(clickCount);
switch (clickCount)
{
case 1: print("1Click処理"); break;
case 2: print("2Click処理"); break;
case 3: print("3Click処理"); break;
}
clickCount = 0;
}

0213弟子2020/06/18(木) 19:54:56.62ID:HhOkrLW+
もし、ChangeSize (true);この処理が遅くて次のクリックを拾ってしまうという感じだったら
この処理中はクリックさせないとか制御するといいかと思います

0214名前は開発中のものです。2020/06/19(金) 07:56:54.58ID:3EIr5H17
>>212
ありがとうございます
switch、TapTime両方ともできました
これでいろいろ応用できそうです

0215弟子2020/06/19(金) 08:33:08.39ID:Wr4Wd/jw
それはよかった
また何か困った事かあれば気軽に書き込みしてね

0216名前は開発中のものです。2020/06/19(金) 12:35:45.42ID:b2JS2xrv
【白血病】 汚染土の上で園児を遊ばせている保育園
http://mevius.5ch.net/test/read.cgi/baby/1574835843/l50

0217名前は開発中のものです。2020/06/19(金) 21:35:58.32ID:3EIr5H17
>>215
さっそく困ったことが起きてしまいました。
シーン1で2タップ3タップを行ってて、
シーン2に行った後にシーン1に戻ると、
なぜか2タップ3タップができなくなってしまいます。
シーン1では複数のカメラを使ってる関係で
シーンの移動には普通のCanvasのボタンではなく、
オブジェクトにEventTriggerとColliderをつけたものを使ってます。
これを押したときのタップが2タップ3タップ判定に影響してるのでしょうか
switch文でもTapTimeでも同じでした。
いい方法があったら教えてください。

0218くまじょ2020/06/19(金) 21:52:49.68ID:qJtZB/g0
デバッグすればいいんでないの
いつもならこの変数の値がこうなっていてif文を通過するけど
おかしくなってるときはこのif文が通過しないとか調べられないのかなあ
調べられないのなら仕方ないけど
頑張ってね

0219弟子2020/06/19(金) 22:25:09.94ID:Wr4Wd/jw
シーンを移動すると読み込まれて新たにオブジェクト等が生成されて動くのよ
しかしシーン移動には追加移動があってそれだと既にある所に追加される

どういう、移動を行ってるかのコードが分からないので的確には答えられないよ

コード載せるか、一番いいのはパッケージにして白猫とかに上げてくれれば確認出来ます
何にせよコード見ないと何とも言えません

0220弟子2020/06/19(金) 22:29:11.82ID:Wr4Wd/jw
通常は
ゲーム開始→シーン1→シーン2
この場合はちゃんとタップできる

シーン2→シーン1
これでタップ出来ない

であるならば、シーン2からの遷移がおかしいと推測出来るけど、具体的2どえなってるかこちらでは見えないからアドバイス出来ないよ

0221名前は開発中のものです。2020/06/20(土) 01:45:58.98ID:LTBNbvLd
初心者によくあるシーンを移動して戻ってきたら直前の状態が維持されると思い込んでるパターンじゃないのか
シンプルな実装ならシーンは読み込むたびにリセットされるぞ

02222172020/06/23(火) 07:54:53.52ID:v+lde/qB
ありがとうございます。
色々調べたのですがまだダメです。
シーン2→シーン1に移るときには
SceneManager.LoadScene("シーン1");
を使ってるので、シーン2は破棄されているはずなのですが、
シーン2から再生スタートして
シーン2→シーン1移動後は、
他にもInvokeを使ってるスクリプトが正しく動かなくなってるので、
Invoke関連の情報はLoadSceneしても残ったままなんてことがあるのでしょうか

02232172020/06/23(火) 08:36:08.96ID:v+lde/qB
シーン1でもシーン2でもInvokeを使った処理をしてます
2タップ3タップのスクリプトは
Invokeを使ってないTime.deltaTimeの方でもダメなので
Invokeだけの問題ではなく、時間処理関連がおかしくなるみたいです。

0224名前は開発中のものです。2020/06/23(火) 08:59:42.00ID:VmEpDOpx
横から失礼。
タップ部はクリアできたのでしょうか?

まずは遷移をタップではなく、ボタンを3つ用意して、遷移がキチンと成り立つか確認するといいと思います。
おっしゃってるように、ivokeなど裏で動くものはシーン消滅の時どう動くのか熟知していないと話になりません。

0225弟子2020/06/23(火) 10:13:49.76ID:bqoQds5b
とりま、遷移移動やってみたけど特に問題なかったよ
検証する場合には、コードを最小限にするといいよ
遷移用のクリックコードは
https://i.gyazo.com/9439dbab281c06ac7fd599d7c0dc3ea5.png
シーンは
https://i.gyazo.com/701ec21b37b5a289b8544f4b7185ba0f.png
これを、2つめのは三角を表示してある

パッケージにしたから、確認してみて
http://whitecats.dip.jp/up/download/1592874685/attach/1592874685.zip
DLパスは1234
新規でプロジェクト作成して、上記のパッケージをインポートすれば確認できると思います
実行の際にはシーンの登録を忘れずに

0226弟子2020/06/23(火) 10:46:04.75ID:bqoQds5b
>>224
>タップ部はクリアできたのでしょうか?
214に出来たって書いてるよ、読んでないのかな
横からくるなら読み返してから書こうね

あとコードも載せてるから自身で検証してから色々と意見言おう
そうじゃないとほんとに 失礼 な話だよ
レスも熟知してないなんて、話になりません。

0227弟子2020/06/23(火) 11:00:25.06ID:bqoQds5b
気になるのは
>複数のカメラを使ってる関係

EventTriggerでクリックするという事は、カメラにRaicaster付けてると思うけど
それが無効になってる可能性もあるのかな
まずは、カメラ一つでやってみるといいかな

0228弟子2020/06/23(火) 11:01:48.36ID:bqoQds5b
すまんね、君のコードが見えない為に、色々と予想でしか書けないのだよ
だから解決までに時間がかかってしまうのだ
本当に解決したいなら、コードをアップしてくれれば一発解決なんだよね

0229名前は開発中のものです。2020/06/23(火) 12:06:46.63ID:VmEpDOpx
>>226
本当に完了しているか確認しただけなのだがね。
その上でデバッグをと思ったが、まあどうぞ。割り込まれたくないならそういってくれ。

0230弟子2020/06/23(火) 12:28:44.61ID:bqoQds5b
あのね
初心者スレからわざわざこっちに誘導したのよ
こういう七紙がうざいからね
今まで全く出てこなかったのにレスが増えるとこういう七紙が湧いてくるんだよなぁ
ほんと七紙ってうざっ

0231名前は開発中のものです。2020/06/23(火) 13:08:51.31ID:kJi7Q44W
人に教えようという気概があるのに、いきなり失礼だとかうざとか使いなさんな、人格疑われたらもったいないぞ。

0232名前は開発中のものです。2020/06/23(火) 13:09:33.83ID:kJi7Q44W
あら、idかわっちまった。

0233弟子2020/06/23(火) 18:55:41.55ID:bqoQds5b
別に選挙に出るわけでもないし人格などどうでもいいんだけど、もともとは
横から失礼といいつつ、締めで「話しになりません」とかの上から目線の方が人格的にどうなのかと思うけどね
ましてや自分でコード上げない検証しないってんなら尚更でしょ

それに何故かこの使われてなかったスレなのにそこに湧いてくるってなのもね

まぁホント七紙っていうのは不思議な生き物だわ

0234名前は開発中のものです。2020/06/23(火) 20:00:43.94ID:kJi7Q44W
君が他のスレで叩かれたのは見てきてるよ。
それでもめげずに初心者指南してるのは立派だが、だからといって見ていないと決め付けるはいかがなものか、いや、あれしきでそこまで荒んでるのかい?

それに本人がivokeやtimeでスパゲティになってるようだから、熟知してないところをはっきりさせる事が失礼なのかい?
なんで人格から選挙の話になるんだw
ちょっとアレ入ってるのか?

0235弟子2020/06/23(火) 21:15:05.31ID:bqoQds5b
アレって何かな?

しっかしオレのファン多いなwww

質問に関係ないの好きだね
コードの話なら歓迎なんだが


まぁ名無しだからしょーがないかw

0236弟子2020/06/23(火) 21:31:26.19ID:bqoQds5b
ついでに言うと
>熟知してないところをはっきりさせる事が失礼なのかい?
んで
>ivokeなど裏で動くものはシーン消滅の時どう動くのか熟知していないと話になりません。
んじゃ熟知しているあなたに、ivoke、おそらくinvokeだと思うけど
消滅の時、どう動くのか書いてあげればいいんじゃないの?
なんで、話になりません って突き放したような言い方なのかねぇ

優位に立ちたいだけでしょw

で、どういう風に動くの?熟知って事は、メモリーがどうなってOSから削除されてとか知っているの?
で、それ知ってアプリケーション作成にどう関係あるの?

説明を是非お願いします

なんせ、初心者相手なのですから、まったくわからないのですよ
熟知しなくても私は作れると思っているけどね

是非熟知した内容をここで披露してみてください



それで初心者が作れるようになるならいい事です

0237名前は開発中のものです。2020/06/24(水) 08:01:52.43ID:QrxPQpfr
もう顔出さないとか言ってたあの時の話はだいぶ滅入ってたんだね。
ここには俺1人しかきてないから大丈夫だよ。人格攻撃や暴言とかしないから。

ivokeの件は、おっしゃるように誤字するぐらい知らないからに決まってます。だから自分に向けても含めて、話にならないと言ったのですよ。これはわかりにくくてすまんかったね。
裏で動く処理はデバッグではわかりにくくする要因の一つだから、本人も怪しんでるから切り離してやるべきだよ。

本人は動くものを望んで入ると思うが、コードを渡してハイ終わりはまた次の相談が出るからね。
問題の解決方法を教えてあげるのが一番いいと思うが…これは人によるから、ソースアップされたらスルーしてるよ、現に何も言ってなかったでしょ?w

0238弟子2020/06/24(水) 08:13:08.22ID:wt31zZvI
昔ベーマガという雑誌があってだ
そこには必ずやゲームのソースがのってたのだよ
で何も知識もないその頃の読者たちは必死でそれをパソコンに打ち込んで実行するのだよ
そういう動くコードを、さらに改造して知識を深めて行って最終的に自分で1から作れるようになるのさ

0239弟子2020/06/24(水) 08:39:48.57ID:wt31zZvI
>>237
> 問題の解決方法を教えてあげるのが一番いいと思うが…

完全に僕とはスタンスが違うので、それやりたいなら自分でスレ建てればいいよ
わざわざ人が質問スレから誘導してきたのにでしゃばってまでやりたいというのがわからんが
あ、このスレあなたが作ったんであれば、私が出ていくから後はしっかり最後まで面倒見てね

どうします?

0240名前は開発中のものです。2020/06/24(水) 09:02:08.96ID:LHtPCiJZ
>>225
ありがとうございます。
このパッケージで試したら移動後も問題なくタップ検知しました。

ということは
自分のシーン2の方のスクリプトに問題があるということですが、
LoadSceneで他のシーンをロードしても影響が残るってことは
シーン2で使ってるタップ関係以外の
Time.timeなどの計算が続いてるってことですよね。
Invokeやtimeなどの時間計算をきちんと終了させるために
必要なコードが抜けてるのでしょうか
それともシーンをDestroyすると完全に消えるとかあるんですかね

0241名前は開発中のものです。2020/06/24(水) 10:38:44.96ID:QrxPQpfr
>>239
ベーマガなんて懐かしいものをw
そんなの出さなくたって通じてるよ、君も書いてるでしょ、よく読まずに諭すなんて 失礼 な話だってw
それに、ほら弟子、あ弟子の弟子になるのかな?ソースが動いたってレスくれてるじゃないか、完了したみたいだけど。さすがにそこからは踏み込めないよw

0242弟子2020/06/24(水) 11:31:27.90ID:wt31zZvI
>>240
うーん、全体が見えないので何とも
objectにクリック設定しているって事なのでカメラからのRaycaster関係かなって気がするけど

原因究明には、最小限のコードにしてみる事です
あとは、今回のちゃんと動いてるパッケージにそちらの欲しい機能を追加していく感じかなぁ

なんにせよ全体が見えないからねぇ

0243弟子2020/06/24(水) 11:43:20.74ID:wt31zZvI
>それともシーンをDestroyすると完全に消えるとかあるんですかね

んーと、シーンのDestroy?
ちなみにUnloadする場合、非同期なのでシーンのUnloadをまって処理するとかの場合には
製作途中で得たUnityのミニ知識を披露するスレの44あたりにやり方書いてあるので、参考にしてみて
https://mevius.5ch.net/test/read.cgi/gamedev/1511784235/44 

0244名前は開発中のものです。2020/06/24(水) 21:49:50.01ID:LHtPCiJZ
>>243
検証した結果、シーン2で使ってるスクリプトの中の
「Time.timeScale = 0;」と「Time.timeScale = 0;」を取り除くと
シーン1に行った後のタップの不具合が起きなくなりました。

調べると個別にOnPause()メソッド等で処理すればいいみたいですが、
Time.timeScale = を残したままシーン2から移動するときに
この影響がなくなるような方法はないでしょうか

0245名前は開発中のものです。2020/06/24(水) 21:51:36.38ID:LHtPCiJZ
>>244
「Time.timeScale = 0;」と「Time.timeScale = 1;」
の間違いです。

0246弟子2020/06/24(水) 22:00:13.48ID:wt31zZvI
単純に考えると、シーン2で変更してるなら、シーン1に行く前に戻せばいいような気がします

ちょっと検討つかずで検証コード書けないからまた、明日にでも考えるけど
なにか参考になる、コードある?
(今は酔ってるのでこのあとは寝る)

0247名前は開発中のものです。2020/06/25(木) 00:21:39.08ID:wwm4yt+D
Time.timeScale = 0の時に中断したりデストローイして
0になりっぱなしになってんじゃね?

0248くまじょ2020/06/25(木) 10:35:34.74ID:HXIUvOl4
色々勉強になるなあ
初心者の俺には知らないことや難しいことばかり

>>244
それはタイムスケールを0に変えたままダブルクリック等は普通に動作させたいのか?
タイムスケールが0だと時間が進まないから時間経過でシングルダブルトリプルを区別することが出来ないと推測

ググったら
タイムスケールに影響されないのがあった
これでタイムスケール0でも時間経過でシングルダブルトリプルの区別ができそう(推測)
古いバージョンにはなかった的なことも書いてあった
注意としてアクティブではないときも時間経過するという違いがある

0249弟子2020/06/25(木) 10:39:15.08ID:kYETgQeL
一応TimeScaleについては公式に説明あるので参考までに
https://docs.unity3d.com/ja/current/Manual/TimeFrameManagement.html

0250弟子2020/06/25(木) 10:43:47.26ID:kYETgQeL
くまじょさん、せっかく色々と書いてくれるのはありがたいけど
相手は初心者なので、推測じゃなくて、自身で検証してくれるといいかと

その上で書いてもらえるとみんな幸せになれると思う
じゃなきゃ混乱の元に

0251弟子2020/06/25(木) 19:31:35.92ID:kYETgQeL
検証してみた
public void BtScale0()
{
Time.timeScale = 0;
}
private void Update()
{
print("delta:" + Time.deltaTime);
}
こんなコードでScale0の時にdeltaTimeがどうなるか
https://i.gyazo.com/e3b583c20471898c8a1ec2352462c117.png
結果、0だった

だから、+= Time.deltaTime こういうコードは使えなくなるね

Time.frameCount は常に動くので、deltaTimeのところはこちらを使うように変更すればいいかと思う

OnPauseとか書いてたからポーズ処理だと思うけど
他にいい手があるかも知れないので

明日また検討してみる

0252名前は開発中のものです。2020/06/25(木) 22:51:19.85ID:VUtd4Pqo
>>248>>251
いろいろ試したところ、
シーン2で使ってる「Time.timeScale = 0;」をそのままにして
シーン2からシーン1に移動するときに
一緒に「Time.timeScale = 1;」をしたところ、
シーン1で不具合が起きませんでした。

「Time.timeScale = 0;」はシーンをまたいで
プロジェクト全体に影響するようなので、
0のままにしておくというのがよくないみたいですね。

0253名前は開発中のものです。2020/06/25(木) 23:02:05.26ID:zBD2mxRN
0だとゲーム内の時間とFlexUpdateが完全に止まるから、
物理やtweenや時間を使ったエフェクトが一切利かなくなるはず

0254弟子2020/06/26(金) 08:00:10.08ID:tKrNJp2d
>>252
単純なのはシーン1のstartにtimescale=1をかいておくとシーンが増えて戻し忘れがなくなるかな

とりあえず解決っぽいので良かったです

0255弟子2020/07/29(水) 10:48:43.15ID:dVlkZpMQ
10日からわんういーく
今度はランキング入れたいな

0256弟子2020/08/07(金) 12:28:11.60ID:44ntxl1X
さてどんなお題かなぁ
前回は密、時事的にいくと自粛とかgotoとかか?
作りにくいぞ

0257弟子2020/08/11(火) 22:34:23.58ID:4Ol4zZ9A
ヤバい、1week の、続々作ってるよねーつぃったー勢すごいわ
弟子はやっとアイディアが固まりつつ

と言ってもショボいんだわな

■ このスレッドは過去ログ倉庫に格納されています