[過去ログ] 【3Dゲームエンジン】Unity質問スレッド29 [無断転載禁止]©2ch.net (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
462
(1): 名前は開発中のものです。 [sage] 2017/06/18(日) 20:13:48.96 ID:q1X0lAjX(5/5) AAS
>>459
459(2): 名前は開発中のものです。 [sage] 2017/06/18(日) 19:51:28.51 ID:Ga9T3hxB(5/9) AAS
>>456
いやランタイム時の参照をどう持つかのお話なので
Unityエディタ上でコンポーネントのプロパティの設定(と無い場合はAddComponent)を
自動化してるか手動でやるかのあなた話は、議論している箇所が違うんですよね…
煽ってるわけではないので気を悪くしないでね
最初の問い(>>389
389(3): 名前は開発中のものです。 [sage] 2017/06/16(金) 22:00:19.70 ID:OyCZvXKK(1) AAS
あらかじめインスペクタでアタッチするのと、AwakeとかでFind&GetCommentのとではどっちが効率いいんだろう
)はランタイム時の効率についての話しだが、それについてはFindのほうがオーバーヘッドが大きいよねと概ねコンセンサスは出来てるだろう
(直接、Find系とインスペクタ参照で速度比較したデータが示されていないけど)

で、>>424
424(3): 名前は開発中のものです。 [sage] 2017/06/18(日) 10:23:18.25 ID:XAVbtWpl(1/3) AAS
>>418
ケースバイケース君と俺は別人だが俺が書いた>>379から派生してグダッてるみたいなので基本方針を示しておく

1. Findは基本的に使用禁止
文字列引数による検索は実行時エラーの温床となるので避けるべき、インスペクタ上でオブジェクトの名前を変えられただけでコケるとか怖すぎる
またヒエラルキーツリーを全部舐める様な処理を多用するのはパフォーマンス的にも好ましくない

2.インスペクタ上で参照がセットされていることを前提にした構造は可能な限り避ける
シーンファイルを誤って変更された時に、インスペクタ上で探して修正するのは面倒。特にシーン内のオブジェクトが複雑に絡み合った参照関係を持つなどは論外
もしどうしてもこれが避けられない場合はオブジェクトをプレハブ化してプレハブ内での参照に限定することで問題のスコープを小さく保つ

上記ルールに沿って作れないならそれは設計が悪いので設計を見直す、疎結合を徹底するべし
必要ならCamera.mainなどの様なstatic経由での参照の受け渡しや、シングルトンなマネージャークラスの導入を検討する
※多用は厳禁、後者はScript Execution Orderを正しく設定すること

ヒエラルキーツリーやインスペクタでの変更に弱いコードはメンテナンス性が低く、こうした変更による問題が発生した場合の問題箇所の検出が非常に困難になるので避ける様にするといい
でランタイム時の効率だけでなくメンテナンス性にも話題が広がったので、複雑な参照関係はエディタ拡張スクリプトで自動化しておくと効率面でもメンテナンス面でも有益なことが多いよね、となった

なんかおかしいかな?
466
(3): 名前は開発中のものです。 [sage] 2017/06/18(日) 20:31:46.17 ID:Ga9T3hxB(7/9) AAS
>>462
そう、その「複雑な参照関係はエディタ拡張スクリプトで自動化しておく」方法を知りたいんです
自分の状況を書いておくと、
1. 最初はインスペクタでドラッグ&ドロップで参照設定していた
2. UIとか配置オブジェクトが1シーンに数十個とかになってくると、さすがにポチポチは面倒…
3. Awakeで命名規則に従ってFindで設定しちゃえ
4. ランタイムではパフォーマンスが悪いし、オブジェクトのリネームに弱いと気づき、泣く泣くポチポチへ戻る
で現在4の状態なので、それを自動化できるアセットなら欲しいと思ったわけです

この話をしてる流れの中でUnityエディタ上でリフレクションとか使って自動設定するのかなとか考えたけど
運用考えると破綻しそうなので、すでにバリバリ実用してそうな>>441
441(4): 名前は開発中のものです。 [sage] 2017/06/18(日) 14:46:23.45 ID:XAVbtWpl(3/3) AAS
>>432
全面的に同意、求道的すぎるのは認める
ここ初心者多いから>>426みたいなクソ開発者になるなという意味を込めて厳しめに書いた
リスクを理解した上で使うならともかく、安易に便利だからで多用すると一気にコードが糞になるからなぁ
>>439
あるある、ついでにエディタ上で触らせる必要がなく親子関係が確定してるオブジェクトなんかはhideFlagsも立てたりする
とかに参考コードのおこぼれでももらおうと思ったわけです

やっぱりそんなものはないのか、ポチポチ業務へ戻りますかね…
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.033s