日向、【Unity】複数のコンポーネントを一度にコピー&ペーストするEditor拡張を使わせていただきましたの巻
別名『さんざん検証までしたのに泣く泣く削った2000字近い部分を供養するの巻』でございます。
『今回どういうわけか、各パーツのならびじゅんが、ユニティのなかでばらばらになっていました。
コンポーネントもかたまってきましたし、ちょうどいい機会なので、ここでいちど、検知エリアたちをまとめなおすことにします。
グループ別に、エンプティオブジェクトの『子』にまとめ、親にギミックをつけて、ひとまとめでオンオフできるようにします。
(On Collide……は、それぞれのオブジェクトに直つけないといけないので、そのままです)
ただこれをやると、検知エリアにつけてたコンポーネントがぜんぶ、はがれちゃうので、ちょっとめんどう。
それは、オブジェクトをコピペしとけば、コンポーネントそのものは、ほぞんされますし、複数のオブジェクトにペーストすることもできますけれど……
コンポーネントひとつずつしかコピーできないので、これはかなりめんどうな作業です。
でも、そのときです。
マリーさんが、スッとタブレットを差し出しました。
「こんなこともあろうかと、マリー、調べておきましたでござるにゃ」
画面に表示されているのは、『ゆにてく備忘録』さんの『【Unity】複数のコンポーネントを一度にコピー&ペーストするEditor拡張』です。
「こちら様は『複数のコンポーネントを複数のオブジェクトにコピーするEditor拡張』ですにゃ。
なんと複数のコンポーネントのうち、ほしいものだけをコピペできるのですにゃ。
それも、コピー先は複数オッケーなのですにゃ!」
「そ、そんなのあるの? すごいすごーい!!
ありがと、マリーおねえちゃん!」
「にゅふふ、どったましてですにゃ~♪」
導入のしかたはかんたん。
スクリプト全文をテキストファイルにコピペ。という拡張子を『.cs』として保存して、それをユニティのプロジェクトファイルの『Editor』ファイルにぽんといれると、使えるようになります。
(まえに、EditorOnlyのオブジェクトだけいろをかえてくれる『EditorOnlyHierarchyColors』や、Ctrl+GいっぱつでEditorOnlyあんど非アクティブにしてくれる『ToggleObjectsActive』のときと、おんなじです)
検知エリアたちのうち、ひとつをコピペ、コンポーネントの保存先オブジェクトになってもらいます。
それから、検知エリアたちをBlender上で『おまとめ』し、保存先オブジェクトから、コンポーネントをコピペするのですが……
「ただこちら、ちょっと注意するとこがありましてにゃ。
ふたつあるOn Collide Item Triggerは、ふたついっしょだとちゃんとはりつきませんにゃ。
なので、一括コピペするのは、いっこだけ。
もういっこは、ふつうにコピペしますのにゃ」
もしもうつかり、ふたついっしょにコピペしちゃった場合は、いっこしかでてこないのですが……
これはいったん削除してしまう必要があります。
というのも、これはなぜか、効果がでないし……
そのオブジェクトに、ほかのOn Collide Item Triggeをつけても、それも動かないので、と、マリーさんはつづけます。
そしてもちろん、メッシュコライダーは、使うメッシュもコピーされちゃうから、手動でつけないといけません。
Itemは、自動でついてくるから、むしろ一括コピペする必要がありません。
そんなとこだけは、注意が必要でしたけれど……
そのほかはメッシュレンダラー (マテリアルがついてます)も、いっしょにぺたっとできちゃうので、とっても助かります!
そんなふうにして、おまとめと移植がおわりました。』
このパートだけで半日かかったような……。
まずそもそも、オブジェクトのならびがバラバラの時点で、モデルの再構築・再導入をするべきでした。なんで進めたマジ。
そして、ふたつを張り付けた時点で一個しか出なかったら、その時点で動作確認をすべきでした。
全部やってから「あれ動かない?!」とテストした阿呆はこちらでございます。
でもメッシュレンダラーもいっしょにペタれるのは快適。まじに快適。
膨大なマテリアルをさがしてペタりなおすのめんどいなーとつねづね思っていたので。
それといっしょに『ダブってないCCKコンポーネント』を複数一括で複数オブジェクトにコピペできるのはほんっっっっとうにありがたいです!
作者様に大感謝です。ありがとうございます!!
おまけ
くるりんといれがホラーワールドになっちまったよ (号泣)
モデルのソリッド化適用をサボっただけなのに……。
適用したらふつうにもどりました。
次回は初の? 二回連続エッセイパート!
『日向、VIPルームラストアップデートのバグとその対策を書き残す。』2/7投稿予定です!
どうぞ、お楽しみに!




