見出し画像

Resoniteでボタン1つでカラーピッカーを出して、色を變更する方法【ButtonEditColorX】

どうも、萬朶櫻です。

Resoniteでは、Devツールでインスペクターを開くと、マテリアルの色を變更へんかうできます。

しかし、次のやうな場合には對應たいおうできません。

  • インスペクターやマテリアル等の知識のない初心者にはハードルが高い

  • Devツールを操作する權限のない人はアクセスできない

  • いちいちインスペクターを開くのが面倒くさい

特に、頻繁に色を變更へんかうすることが想定される場面では尚更です。

さう云ふ時に便利な「ButtonEditColorX」といふコンポーネントを見つけたので、今囘はそれを紹介しようと思ひます。


【下準備】ボタン系のコンポーネントを充てる

ButtonEditColorX」といふ名前から分かる通り、このコンポーネントはボタンが押されることを前提としてゐる。

そのため、どこかにボタンの機能を持たせた物體オブジェクトを用意する必要がある。

今囘は、この四角の箱にボタン機能を持たせて、この箱自體じたいの色をへられるやうにしてみる。

ボタン系コンポーネントには「TouchButton」「PhysicalButton」などがある。

どちらでも良いが、今囘は「TouchButton」を使用する。Devツールで箱の階層を開き、「コンポーネントをアタッチ」を押す。

各ボタンの階層はここ

ButtonEditColorX

先ほど「TouchButton」を充てたのと同じ階層(スロット)でもう一度「コンポーネントをアタッチ」を押し、今度は「ButtonEditColorX」を充てる。

[Common UI] -> [Button Interactions] -> ButtonEditColorX

ButtonEditColorXを充てた状態。

次に、以下の通り「Target」に變更へんかうしたいマテリアルの色をてはめる。

今囘は「Albedo Color」にした

「_Color Picker」などの項目は弄らなくても良い。

有識者に問うたところ、「項目名の先頭に『_(アンダーバー)』があるものは、コンピューター側で自動で調整してくれる項目であるから、ユーザーが操作する必要は殆ど無い」とのこと。

そして、ボタンを仕込んだ箱をクリックしてみると、カラーピッカーが出現し、色を自由に變更へんかうできる。

おまけ

ButtonEditColorXの各項目

  • Persistent: このコンポーネントを充てられてゐる物をインベントリなどに保存する時に、このコンポーネントも一緒に保存するかどうか

  • UpdateOrder: このコンポーネントの更新順序

  • Enabled: このコンポーネントを有效・無效


  • Target: 變更へんかうしたいマテリアルの色

  • _colorPicker: 呼び出すカラーピッカー。この項目は弄らなくても良い

  • Continuous: (※)

  • Alpha: オンにすると、カラーピッカーに不透明度の項目が出てくる。

  • HDR: オンにすると、カラーピッカーにゲインの項目が出てくる。

(※)Continuousについて

參考文獻のAI翻譯ほんやくによると以下のやうな説明があった。

「button edit color x」の下部にはいくつかのオプションがあります。「continuous」を無効にすると、カラーダイアログで保存ボタンを押すまで色が更新されません。これは色の変更をより控えめに行いたい場合に適しています。例えば、赤から緑に変える際に、途中の色の混ざり具合や試行錯誤を見せたくない場合、「continuous」をオフにします。そうすれば、最初は赤で、緑に変更して保存を押すと、直接その色に変わります。

Claude 3.5 Sonnetを使用

どうやらカラーピッカーを弄ってゐる間に色がグルグル變化へんくわするのを防ぐ機能らしい。

ここまでは良いのだが、いざ「保存」をおしてもカラーピッカーで選擇せんたくした色に變化へんくわせず、元の色のままになる。

もしかするとバグかも知れない。

ボタンをクリックしてもカラーピッカーが出ない場合

  1. Targetにマテリアルの色が適切に充てられてゐない

  2. 「ボタン系コンポーネント」と「ButtonEditColorX」が同じ場所に存在してゐない

だいたいこのどちらかが原因である。2については、下記畫像ぐわざうのやうに、同じ場所に兩コンポーネントを配置すると良い。

關係ない所の色まではる場合

このやうに、箱の色だけを變更へんかうするつもりが、別の物まで色がはってしまふことがある。

「新規作成」で作成される3D物體オブジェクトは、すべて共通のマテリアルが初期設定として割りてられてゐる。

そのため、「新規作成」で出した物のマテリアルをそのままへてしまふと、その共通マテリアルを使用してゐるすべての物が卷き添へを食らってしまふ。


囘避するには、「新規作成」→「マテリアル」の中の適當てきたうなマテリアル(今囘は「PBS Metallic」を使用)を選び、出す。

出てきたら、インスペクターの黄色文字「PBS_Metallic」もしくは白い球體きうたいをそのまま掴んで、物體オブジェクトのマテリアルが充てられてゐる所(だいたい「MeshRenderer」といふ所にある)の欄に持っていき、離す。

マテリアルを變更する前
マテリアルを變更した後

このやうに、名前がはってゐれば成功。

また、ButtonEditColorXの「Target」の所を新しいマテリアルにしておくのも忘れずに

かうすれば、特定の物體オブジェクトのみ色をへられるやうになる。

參考文獻


この記事が気に入ったらサポートをしてみませんか?