[過去ログ]
【ゲームエンジン】Unity初心者質問スレBuild2 (1002レス)
【ゲームエンジン】Unity初心者質問スレBuild2 http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/
上
下
前
次
1-
新
通常表示
512バイト分割
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
962: 名前は開発中のものです。 [sage] 2020/01/09(木) 23:26:31.33 ID:2OZqFXaj >>945, 946 サンキュー、そういうの教えてもらえるのは、本当に有意義だわ。 自分にはまだ早いので、しばらくベタで悪戦苦闘して経験値つんでからトライするわ。 現在、物理ゲームパッドで遊んでもらう想定で作ってるけど、一応スマホ画面操作に対応しようと思い、 新しい InputSystem で、Canvas の UI ボタンを使ってスマホ画面操作用のコントローラ作ったけど、 一つもコード書かずに物理ゲームパッド想定のゲームにマッピング出来た。InputSystem 凄い。 でもスマホ画面操作でBダッシュジャンプって超絶むずいね、物理コントローラーなら楽勝でBダッシュジャンプ出来るのに… http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/962
963: 名前は開発中のものです。 [] 2020/01/10(金) 11:30:27.01 ID:08GLxpkh >>961 よければこれの根拠教えてください 次のhp ではfor reach と大差ないとあるけど、何か他の要因? https://qiita.com/nskydiving/items/c9c47c1e48ea365f8995 http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/963
964: 名前は開発中のものです。 [sage] 2020/01/10(金) 12:14:16.98 ID:6FaPVqIC >>963 LINQのメソッドに渡すデリゲートは取り扱いを間違えるとGC対象になるし それに関してググって出てくる記事がほぼ全て検証も解釈も間違ってるから使うなというのは分かる http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/964
965: 名前は開発中のものです。 [] 2020/01/10(金) 12:38:04.63 ID:08GLxpkh そう言うことですか ガベージ関連だと初心者が考えなくても まぁ、このスレ的には問題なさそうですね http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/965
966: 名前は開発中のものです。 [] 2020/01/10(金) 12:42:10.82 ID:08GLxpkh だとすると「RINQ がゲームで悪手」というよりデリケート関連が全てのプログラムで悪手であって、メモリー関連の改善待ちとなるのかな? c#のバージョンによる改善待ちになるのか まぁ将来的な課題でしょうかね http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/966
967: 名前は開発中のものです。 [sage] 2020/01/10(金) 12:57:56.83 ID:5Sf2RA1L デリゲートがってよりも、Linqで色々繋げると色々コピーがされるしIEnum経由して列挙してくのがアレって話じゃないか? http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/967
968: 名前は開発中のものです。 [sage] 2020/01/10(金) 14:23:25.79 ID:6FaPVqIC >>967 IEnumerableは一つずつ取り出して処理する為の機能だから、 複製はされないしチェーンの数だけループ発生したりもしないよ もちろんToArray()で新規配列は生成されるしOrderBy()でも内部で別のループが生まれてしまうがそれはそういう関数だからな http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/968
969: 名前は開発中のものです。 [sage] 2020/01/10(金) 15:40:25.16 ID:5Sf2RA1L >>968 いやもし5段階に組まれてたら下から見るとMoveNext5回呼ばれる事でやっと元のコレクションなりにたどり着くやん あれインタフェースになってて1番下でのMoveNextでもとのに辿り着くっけ? http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/969
970: 名前は開発中のものです。 [sage] 2020/01/10(金) 18:42:11.72 ID:6FaPVqIC >>969 例えばこんなLINQがあるとするだろ var seq = list.Where(A).Where(B).Where(C); foreach(var n in seq) Console.WriteLine(n); 内部的にはこの処理と同じ var tmp = list.GetEnumerator(); while(tmp.MoveNext()){ var n = tmp.Current; if(!A(n)) continue; if(!B(n)) continue; if(!C(n)) continue; Console.WriteLine(n); } 取り出した要素をチェーンに繋いである関数に順番に渡してるだけ 要素一つにMoveNextを何回も呼んでるわけじゃない http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/970
971: 名前は開発中のものです。 [sage] 2020/01/10(金) 19:15:11.60 ID:7KV1Qvxy Linqを許可しておくとRDBMSみたいに組むやついるからな ゲームでそんな使い方されたら激重だから、使わないで統一するのが正解かと http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/971
972: 名前は開発中のものです。 [sage] 2020/01/10(金) 19:55:49.34 ID:Pn9TT9VK linqの冒険… http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/972
973: 名前は開発中のものです。 [] 2020/01/10(金) 21:28:36.70 ID:08GLxpkh >>957 これってプログラムするとどんなコードになるのかな? いまいち浮かばないんだが http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/973
974: 名前は開発中のものです。 [] 2020/01/10(金) 22:12:46.10 ID:lJeo0zER 3dでPlatform does not support compute shadersこんなエラーが出たんだがよくわかんないんだけどどういうこと? ユニティちゃんが原因みたいだけどそれ以上はわからなかった http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/974
975: 名前は開発中のものです。 [sage] 2020/01/10(金) 22:17:28.65 ID:Fenu7wQ/ そのシェーダーを積んでないから描画できないぞゴルァ、かと。 http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/975
976: 名前は開発中のものです。 [sage] 2020/01/10(金) 22:52:24.52 ID:L/Emtw4P >>970 そだっけ?その例だとWhereの第一引数に対してMoveNextすることでさらにその上のWhereが返すIEnumにアクセスってなるんじゃ? Linqのコンパイラでそんな最適化しないでしょ http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/976
977: 名前は開発中のものです。 [sage] 2020/01/10(金) 23:26:02.35 ID:XdY5fR78 >>976 遅延評価というものがあるし、そもそもWhereが返すのはIEnumでなく値そのものだからそこのところを誤解してる http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/977
978: 名前は開発中のものです。 [] 2020/01/10(金) 23:40:30.02 ID:lJeo0zER >>974 ダメだわこれ、unityちゃんの配布物全部がshaderエラーになるわ どうなってるんだ急に http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/978
979: 名前は開発中のものです。 [sage] 2020/01/11(土) 00:03:09.69 ID:L2PVl/EJ Platformがなんちゃらっつってんだからそのへんじゃないの http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/979
980: 名前は開発中のものです。 [sage] 2020/01/11(土) 00:19:49.48 ID:MByoB+15 ビルドターゲットをWebGL辺りに変えたんだろ あれはCompute Shaderが使えないからそんな感じのエラーが出る http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/980
981: 名前は開発中のものです。 [sage] 2020/01/11(土) 01:41:24.01 ID:1/8GPuaw >>977 ごめん何言ってるのかよく分からん https://docs.microsoft.com/ja-jp/dotnet/api/system.linq.enumerable.where http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/981
982: 名前は開発中のものです。 [sage] 2020/01/11(土) 01:45:41.87 ID:1/8GPuaw WhereがIEnum返さなかったら次の人どうやって列挙するの http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/982
983: 名前は開発中のものです。 [sage] 2020/01/11(土) 01:49:41.69 ID:1/8GPuaw >>977 ついでに言うと遅延評価ってのはまさに後からMoveNextした時に評価されることを指すと思うぞこの場合 http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/983
984: 名前は開発中のものです。 [sage] 2020/01/11(土) 02:03:49.82 ID:eNMw2FnY >>981-983 実行時の話な var seq = list.Where(...)が返すのはIEnumだが、 実際にforeach(var n in seq)で遅延評価されるときには一つずつの値を返してるし、それが次のWhereに送られてる ループの位置を見てみろ、配列は一回しか回ってないだろ? http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/984
985: 名前は開発中のものです。 [sage] 2020/01/11(土) 02:17:15.69 ID:1/8GPuaw >>984 いやだからその展開式みたいに実行時コードがなるって話あったっけ? こんぱいられべるでLINQ特化で最適化しないとそうはできないと思うけど、いや俺が知らないだけかもなのでこう最適化されるよーってソースあるなら教えてくれ http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/985
986: 名前は開発中のものです。 [sage] 2020/01/11(土) 02:34:07.57 ID:eNMw2FnY >>985 yieldのごく普通の振る舞いなんだからイテレーター使ったことあるなら分かるだろ? ちなみに具体的なソースはこれな https://github.com/dotnet/corefx/blob/master/src/System.Linq/src/System/Linq/Where.cs http://mevius.5ch.net/test/read.cgi/gamedev/1557293737/986
メモ帳
(0/65535文字)
上
下
前
次
1-
新
書
関
写
板
覧
索
設
栞
歴
あと 16 レスあります
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.015s