- Bearbeitet
SkeletonGraphicCustomMaterialsの使い方について
SkeletonGraphicCustomMaterialsの使い方についてお伺いしたいと思います。
リファレンスを見たのですが、ちょっと使いこなせず、相談させていただきたく思います。
例として
①スパインボーイをuGUIで実装したいとする
②スパインボーイの「銃」部分にのみ特定のシェーダーを対応させたい。
として、
SkeletonGraphicCustomMaterials
を使おうとしたのですが、銃部分に対応させるマテリアルの作成方法などがわからず、困っております。
どこかにサンプルプロジェクトや、詳しい実装方法の説明動画などございますでしょうか。
お手数ですがご確認いただけますと幸いです。
よろしくおねがいします。
現在の SkeletonGraphicCustomMaterials
コンポーネントはSkeletonRendererCustomMaterials
ほど強力ではなく、ドキュメントにはまだ明示的に記載されていません。
残念ながら、 SkeletonGraphic
とSkeletonGraphicCustomMaterials
は、 SkeletonRenderer
のように、スロットごとのカスタムマテリアルをまだサポートしていません。
この機能の発行チケットをここに作成しました。
https://github.com/EsotericSoftware/spine-runtimes/issues/1982
残念ながら、レンダリング関連のコードにいくつかの変更が必要なため、4.1ベータブランチでの実装になります。
この機能が実装されるまでは、次の回避策のいずれかを使用できます。
特別なマテリアルが必要な画像を別のアトラステクスチャにパックします。次に、
SkeletonGraphicCustomMaterials
コンポーネントを使用して、このテクスチャでマテリアルをオーバーライドします。非推奨:「セパレータースロット」機能を使用して、スケルトンを3つ以上の部分に分割します。そして、2番目の部分の
CanvasRenderer
でマテリアルをオーバーライドできます。ただしこれには、SkeletonGraphic.OnMeshAndMaterialsUpdated
コールバックデリゲートを使用して、適切なタイミングでマテリアルを設定する必要がある場合があります。
We are sorry that the current SkeletonGraphicCustomMaterials
component is not as powerful as SkeletonRendererCustomMaterials
and that the documentation does not explicitly state this yet.
Unfortunately SkeletonGraphic
and SkeletonGraphicCustomMaterials
do not yet support custom Materials per Slot as SkeletonRenderer
does.
I have created an issue ticket here for this feature:
https://github.com/EsotericSoftware/spine-runtimes/issues/1982
Unfortunately it will be implemented on the 4.1-beta branch, since it requires some changes to the rendering-related code.
Until the feature is implemented, you could use one of the following workarounds:
-
Pack images that need a special material to a separate atlas texture. Then you use the
SkeletonGraphicCustomMaterials
component to override the Material at this texture. -
Not recommended: Use the
Separator Slots
feature to separate the skeleton into three or more parts. Then you can override the Material at the second part'sCanvasRenderer
, but this might require using theSkeletonGraphic.OnMeshAndMaterialsUpdated
callback delegate to set the material at the right time.
- Bearbeitet
返信ありがとうございます。
4.1ベータを待ってみようとおもいます。
いつもありがとうございます、ハラルド!
Thanks for the reply.
I think I'll wait for the 4.1 beta.
Thanks again, Harald!
Sorry!
I had chosen the wrong Portuguese!
お返事ありがとうございます。 機能が実装され次第、ここに投稿します。
ちなみに、残念ながら私は英語とドイツ語しか理解できず、残念ながらポルトガル語は理解できません。 私はその言語が英語の代わりに誤って選択されたと思います。 それでも、2つの言語で投稿していただきありがとうございます。
Thank you for getting back to us. We will post here as soon as we have implemented the feature.
By the way, unfortunately I only understand English and German, unfortunately not Portuguese. I assume the language was selected accidentally instead of English. Nevertheless, thanks for posting it in two languages .
お世話になっております。
すみません、こちらの件なのですが、なにか進捗とかございますでしょうか……?
いつ頃実装できそうかとか目処が立っていたら共有していただけますと幸いです。
申し訳ありませんが、まだこれを実装できていません。 issueチケットをサブスクライブして、進行状況に応じて更新を受け取ることができます。
Sorry, we didn't get to implement this yet. You can subscribe to the issue ticket to receive updates upon any progress.
https://github.com/EsotericSoftware/spine-runtimes/issues/1982