koyu

rapture_20211223034001.jpg

私は現在、このような薄いグレーの髪をベースにした派生のモブキャラを作成しています。
そしてアタッチメントカラーを変更することによって、様々な髪色のキャラクターを表現できると考えました。
髪の色ごとにSpine上でスキンを分けるのは管理が大変なので、Unity上でアタッチメントカラーを動的に変更したいのですが、どのようにコードを記述すればよいでしょうか?
スケルトン全体の色変化はMaterialPropertyBlocksでできたのですが、髪や目のパーツなど、特定のアタッチメントだけ色変化をする方法を探しています。
Nemaš dopuštenje za pregledavanje privit(a)ka dodan(og)ih postu.
Avatar
koyu
  • Postovi: 35

Misaki

こんにちは!

アタッチメントのカラー変更をご希望とのことですが、アタッチメントは直接色変更ができないため、特定のパーツの色だけを変えたい場合は、スロットでカラーを変更することになります。

スロットカラーの変更は以下のようなコードで実現できます。
var slot = skeletonAnimation.Skeleton.FindSlot("変更したいスロット名"); //カラー変更をしたいスロットを探す
slot.SetColor(new Color(1, 0, 0, 1)); //新しいスロットカラーを設定(r.g.b.a)
何かご不明な点がございましたらお気軽にご質問ください。どうぞよろしくお願いいたします。
Avatar
Misaki

Misaki
  • Postovi: 759

koyu

こんにちは! いつもお世話になっています。
アタッチメントではなくスロットカラーでの変更、了解しました!
詳しいコードを載せてくださってありがとうございます。こちらを参考に実装したいと思います
Avatar
koyu
  • Postovi: 35


Natrag na 日本のSpine ユーザー