Cardano Unity SDK v1.0 が WebGL ゲーム向けにウォレット、NFT、ネイティブトークンのツールを追加
オープンソースのパッケージは、CIP-30 ウォレット接続、Cardano データアクセス、WebGL テンプレート、NFT とネイティブトークン向けのサンプルアプリケーションを組み合わせている。クライアント側署名のサンプルは、高価値資産を扱う本番利用ではなく、引き続きテスト用途を想定している。
By SongMarketCap
開発者 John Moreland は、Unity の Cardano Game Development SDK のバージョン 1.0.0 を公開した。これは Unity WebGL ゲームを Cardano と接続するための無料ツールキットだ。
Project Catalyst Fund 12 の資金提供を受けたこの SDK は、C# スクリプト、ブラウザウォレット接続、再利用可能なテンプレート、サンプルアプリケーションをまとめて提供する。コードは MIT ライセンスで公開されており、GitHub から Unity パッケージとしてダウンロードできる。
Unity 開発者向けの Cardano アクセスをパッケージ化
この SDK には、Cardano のアカウント、アドレス、ネイティブ資産、トランザクションに関する情報を取得するための Blockfrost と Koios との統合が含まれている。両サービスに対応することで、同一ツールキット内で二つのデータアクセス手段を開発者に提供する。
ブラウザゲーム向けには、Unity WebGL アプリケーションと互換性のある Cardano ウォレットの間に CIP-30 接続を追加する。ゲームはウォレットへのアクセスを要求し、その残高を表示できるが、トランザクションの承認は引き続きユーザー側に残る。
二つの WebGL テンプレートが、異なるアプリケーションレイアウトの出発点を提供する。CardanoBasic には、Unity アプリケーションの埋め込みとウォレット接続に必要な中核構造が含まれる。CardanoResponsive は、画面サイズに応じて Unity コンテンツを調整するモバイルファーストのインターフェースを追加する。
バージョン 1.0.0 の利用には、WebGL Build Support を備えた Unity 2022.3 LTS 以降が必要だ。ミンティングとトークン配布の機能には、Unity の uGUI と TextMeshPro、Newtonsoft Json、MeshJS バンドルも使用する。
サンプルアプリは NFT、ミンティング、プレイヤー報酬を網羅
三つのサンプル分散型アプリケーションが、ゲーム内のイベントに Cardano の機能がどのように応答できるかを示す。
Gated Access の例では、接続されたウォレットが指定の NFT またはネイティブトークンを保有しているかどうかを確認する。開発者はその結果を用いて、制限エリアやデジタルコンテンツ、その他のゲーム機能をアンロックできる。
Minting Tokens の例では、アプリケーション内のアクションに応じて、CIP-25 の NFT または代替可能な Cardano ネイティブトークンを作成できる。別の Awarding Tokens の例では、指定のトレジャリーウォレットからプレイヤーに既存資産を送付し、オプションでトランザクション手数料のスポンサー提供も含められる。
このツールキットには、プロジェクト設定の確認、ウォレットの構成、デモシーンのビルドのための五つのデモンストレーションシーン、再利用可能なプレハブ、エディターツールも含まれている。これらのコンポーネントにより、開発者は自分のプロジェクトに適用する前に動作する例を確認できる。
Moreland は、この SDK の本番導入事例、採用数、トランザクション量については報告していない。
[NEWSBREAK]
クライアント側署名は本番利用に制約を与える
ドキュメントには、ミンティングとトークン付与の各例に関するセキュリティ警告が含まれている。どちらも WebGL ビルド内に含まれるゲームウォレットを使用しており、ユーザーのブラウザに配信されるファイルでは秘密の署名資格情報を安全に隠すことができない。
開発者には、少額のみを保有する専用ウォレットの使用が推奨され、可能であれば Cardano Preprod 上で運用するよう勧告されている。実際の価値を持つ資産を扱うアプリケーションは、トランザクション署名を開発者が管理するサーバー側に移すべきだ。サーバーリレーは将来のバージョンで予定されているが、v1.0.0 には含まれていない。
この SDK は、84,000 ADA が割り当てられた Project Catalyst の提案に端を発している。Catalyst のプロジェクトページでは、五つのマイルストーンのうち二つが完了として記載されているものの、全体の取り組みは進行中とされている。サンプルアプリケーション、Unity Asset Store での公開、最終クローズアウトはまだ完了としてマークされておらず、GitHub 版は Catalyst の全てのマイルストーン完了を示すものではない。
この SDK は 10月27日に Unity Asset Store へ審査のため提出された。掲載が利用可能になるまでは、公式の配布物は GitHub 上の v1.0.0 パッケージのままであり、実資金を用いるアプリケーションはトランザクション署名を WebGL クライアントの外に保つ必要がある。