バージョン: 2021.3 以降
この例では、カスタムコントロールをネイティブの Unity の型にバインドする方法を説明します。
この例では、2D 画像を表示するカスタムコントロールを作成します。新しいアセット型のカスタムエディターでカスタムコントロールを使用し、カスタムコントロールを新しい型のアセットのフィールドにバインドします。
You can find the completed files that this example creates in this GitHub repository.
このガイドは、Unity エディター、UI Toolkit、および C# スクリプトに精通している開発者を対象としています。始める前に、以下をよく理解してください。
Texture2D を含むシリアル化されたオブジェクトを作成します。
bind-custom-control という名前のフォルダーを作成し、ファイルを保存します。TextureAsset.cs という名前の C# スクリプトを作成し、そのコンテンツを以下のように置き換えます。`2D テクスチャアセットへの参照を表すカスタムコントロールを C# で作成し、USS でスタイルを設定します。
Editor という名前のフォルダーを作成します。TexturePreviewElement.cs という C# スクリプトを作成します。TexturePreviewElement.cs の内容を以下に置き換えます。Resources という名前のフォルダーを作成します。texture_preview_element.uss という名の StyleSheet を作成し、そのコンテンツを以下に置き換えます。Inspector UI を作成し、カスタムコントロールを Texture2D オブジェクトにバインドします。
TextureAssetEditor.cs という名の C# スクリプトを作成し、そのコンテンツを以下に置き換えます。TexturePreviewElement を含む UXML ファイルを作成し、binding-path プロパティを texture に設定します。これにより、TexturePreviewElement は TextureAsset.texture にバインドされます。
texture_asset_editor.uxml という名の UI ドキュメントを作成し、そのコンテンツを以下に置き換えます。TextureAsset という名前のインスタンスが作成されます。TextureAsset.texture が変更されます。