(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2023090641
(43)【公開日】2023-06-29
(54)【発明の名称】NFT化された被装着モデルのアイテム着脱を処理する方法及びそのシステム
(51)【国際特許分類】
G06T 13/40 20110101AFI20230622BHJP
G06T 19/00 20110101ALI20230622BHJP
【FI】
G06T13/40
G06T19/00 300A
【審査請求】有
【請求項の数】18
【出願形態】OL
(21)【出願番号】P 2022180004
(22)【出願日】2022-11-10
(62)【分割の表示】P 2022009407の分割
【原出願日】2022-01-25
(31)【優先権主張番号】P 2021205447
(32)【優先日】2021-12-17
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】518129019
【氏名又は名称】株式会社コルク
(74)【代理人】
【識別番号】100104411
【弁理士】
【氏名又は名称】矢口 太郎
(72)【発明者】
【氏名】竹井 英行
(72)【発明者】
【氏名】進藤 江介
【テーマコード(参考)】
5B050
【Fターム(参考)】
5B050AA08
5B050BA09
5B050BA12
5B050BA13
5B050CA07
5B050CA08
5B050EA13
5B050FA02
5B050FA19
(57)【要約】
【解決課題】 メタバース間で使用でき、アイテムの着せ替えができるNFT化アバターを提供する。
【解決手段】 コンピュータがNFT化されたアバターの着せ替えを処理する方法であり、コンピュータが、アバター用スマートコントラクトとアバターを表示するためのデータとを参照してユーザにアバターを表示する工程と、コンピュータが、アイテム用スマートコントラクトとアイテムを表示するためのデータとを参照してユーザにアイテムを表示する工程と、コンピュータが、ユーザに、アバターにアイテムを試着するための試着インタフェースを提供する工程と、コンピュータが、ユーザに、アバターに装着するアイテムを決定させるためのインタフェースを提供する工程と、コンピュータが、ユーザがアバターに装着するアイテムを決定したことに基づいて上記ブロックチェーン上でアバター用スマートコントラクトに対してアバターNFTに対してアイテムNFTを関連付ける書き込みを行う工程とを有する方法が提供される。
【選択図】
図4
【特許請求の範囲】
【請求項1】
コンピュータが、NFT化された被装着モデルへのアイテムの着脱を処理する方法であり、
コンピュータが、被装着モデルを表示するためのデータを格納する工程と、
コンピュータが、被装着モデルに装着するアイテムを表示するためのデータを格納する工程と、
コンピュータが、ブロックチェーン上で前記被装着モデル用のスマートコントラクトを提供する工程と、
コンピュータが、ブロックチェーン上で前記アイテム用のスマートコントラクトを提供する工程と、
コンピュータが、上記被装着モデル用スマートコントラクトと上記被装着データを表示するためのデータとを参照してユーザに被装着モデルを表示する工程と、
コンピュータが、上記アイテム用スマートコントラクトと上記アイテムを表示するためのデータとを参照してユーザにアイテムを表示する工程と、
コンピュータが、ユーザに、被装着モデルにアイテムを試着脱するための試着脱インタフェースを提供する工程と、
コンピュータが、ユーザに、被装着モデルに装着するアイテムを決定させるためのインタフェースを提供する工程と、
コンピュータが、ユーザが被装着モデルに着脱するアイテムを決定したことに基づいて上記ブロックチェーン上で被装着モデル用スマートコントラクトに対して被装着モデルNFTに対して着脱にかかるアイテムNFTを関連付ける若しくは関連付けを解除するトランザクションを行う工程と
を有する
ことを特徴とする方法。
【請求項2】
請求項1記載の方法において、
前記被装着モデルは、アバターである
ことを特徴とする方法。
【請求項3】
請求項1記載の方法において、
さらに、前記被装着モデル用スマートコントラクトに対して上記トランザクションを行ったことに基づいて、前記被装着モデルを表示するためのデータをアイテム着脱後のものに更新する工程をさらに有する
ことを特徴とする方法。
【請求項4】
請求項1記載の方法において、
さらに、着せ替え後の被装着モデルを表示するためのデータに基づいて、アイテム着脱後の被装着モデルを表示するユーザインタフェースを提供する工程
を有する
ことを特徴とする方法。
【請求項5】
請求項1記載の方法において、
前記トランザクションを行う工程は、被装着モデルに装着するアイテムのアイテムNFTの所有アドレスをユーザのウォレットアドレスからアイテムアバターNFTのスマートコントラクトアドレスに変更するトランザクション、被装着モデルから外すアイテムのアイテムNFTの所有アドレスをアイテムアバターNFTのスマートコントラクトアドレスからユーザのウォレットアドレスに変更するトランザクションの両方若しくはいずれか一方のトランザクションを行うものである
ことを特徴とする方法。
【請求項6】
請求項5記載の方法において、
被装着モデルから外すアイテムと装着するアイテムがある場合、
被装着モデルから外すアイテムのアイテムNFTの所有アドレスをアイテムアバターNFTのスマートコントラクトアドレスからユーザのウォレットアドレスに変更するトランザクションを実行した後に、
被装着モデルに装着するアイテムのアイテムNFTの所有アドレスをユーザのウォレットアドレスからアイテムアバターNFTのスマートコントラクトアドレスに変更するトランザクションの実行を許可する
ことを特徴とする方法。
【請求項7】
請求項5記載の方法において、
前記コンピュータが、ユーザに、被装着モデルに装着するアイテムを決定させるためのインタフェースを提供する工程は、
スマートコントラクト毎に、アイテムの装着若しくは取り外すためのトランザクションをユーザに実行させるためのボタン若しくはリンクを上記インタフェースに表示するものである
ことを特徴とする方法。
【請求項8】
請求項7記載の方法において、
アイテムの装着するためのトランザクションをユーザに実行させるためのボタン若しくはリンクは、
アイテムを取り外すためのトランザクションが実行された後にアクティブ若しくは表示されるものである
ことを特徴とする方法。
【請求項9】
請求項2記載の方法において、
さらに、
コンピュータが、上記被装着データを表示するためのデータを、特定のメタバースで使用するために生成し、ダウンロードを許可させる工程
を有することを特徴とする方法。
【請求項10】
コンピュータが、NFT化された被装着モデルへのアイテムの着脱を処理するシステムであり、
ブロックチェーン上には、前記被装着モデル用のスマートコントラクトと着脱アイテム用のスマートコントラクトとが提供されており、
コンピュータが、被装着モデルを表示するためのデータを格納する被装着モデル表示データ格納部と、
コンピュータが、被装着モデルに装着するアイテムを表示するためのデータを格納するアイテム表示データ格納部と、
コンピュータが、上記被装着モデル用スマートコントラクトと上記被装着データを表示するためのデータとを参照してユーザに被装着モデルを表示する被装着モデル表示部と、
コンピュータが、上記アイテム用スマートコントラクトと上記アイテムを表示するためのデータとを参照してユーザにアイテムを表示するアイテム表示部と、
コンピュータが、ユーザに、被装着モデルにアイテムを試着脱するための試着脱インタフェースを提供する試着インタフェース提供部と、
コンピュータが、ユーザに、被装着モデルに装着するアイテムを決定させるためのインタフェースを提供する決定インタフェース提供部と、
コンピュータが、ユーザが被装着モデルに着脱するアイテムを決定したことに基づいて上記ブロックチェーン上で被装着モデル用スマートコントラクトに対して被装着モデルNFTに対して着脱にかかるアイテムNFTを関連付ける若しくは関連付けを解除するトランザクションを行うスマートコントラクト通信処理部と
を有する
ことを特徴とするシステム。
【請求項11】
請求項10記載のシステムにおいて、
前記被装着モデルは、アバターである
ことを特徴とするシステム。
【請求項12】
請求項10記載のシステムにおいて、
さらに、前記被装着モデル用スマートコントラクトに対して上記トランザクションを行ったことに基づいて、前記被装着モデルを表示するためのデータをアイテム着脱後のものに更新する工程をさらに有する
ことを特徴とするシステム。
【請求項13】
請求項10記載のシステムにおいて、
さらに、着せ替え後の被装着モデルを表示するためのデータに基づいて、アイテム着脱後の被装着モデルを表示するユーザインタフェースを提供する工程
を有する
ことを特徴とするシステム。
【請求項14】
請求項10記載のシステムにおいて、
前記トランザクションを行う工程は、被装着モデルに装着するアイテムのアイテムNFTの所有アドレスをユーザのウォレットアドレスからアイテムアバターNFTのスマートコントラクトアドレスに変更するトランザクション、被装着モデルから外すアイテムのアイテムNFTの所有アドレスをアイテムアバターNFTのスマートコントラクトアドレスからユーザのウォレットアドレスに変更するトランザクションの両方若しくはいずれか一方のトランザクションを行うものである
ことを特徴とするシステム。
【請求項15】
請求項14記載のシステムにおいて、
被装着モデルから外すアイテムと装着するアイテムがある場合、
被装着モデルから外すアイテムのアイテムNFTの所有アドレスをアイテムアバターNFTのスマートコントラクトアドレスからユーザのウォレットアドレスに変更するトランザクションを実行した後に、
被装着モデルに装着するアイテムのアイテムNFTの所有アドレスをユーザのウォレットアドレスからアイテムアバターNFTのスマートコントラクトアドレスに変更するトランザクションの実行を許可する
ことを特徴とするシステム。
【請求項16】
請求項14記載のシステムにおいて、
前記コンピュータが、ユーザに、被装着モデルに装着するアイテムを決定させるためのインタフェースを提供する工程は、
スマートコントラクト毎に、アイテムの装着若しくは取り外すためのトランザクションをユーザに実行させるためのボタン若しくはリンクを上記インタフェースに表示するものである
ことを特徴とするシステム。
【請求項17】
請求項16記載のシステムにおいて、
アイテムの装着するためのトランザクションをユーザに実行させるためのボタン若しくはリンクは、
アイテムを取り外すためのトランザクションが実行された後にアクティブ若しくは表示されるものである
ことを特徴とするシステム。
【請求項18】
請求項11記載のシステムにおいて、
さらに、
コンピュータが、上記被装着データを表示するためのデータを、特定のメタバースで使用するために生成し、ダウンロードを許可させる工程
を有することを特徴とするシステム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、NFT化された被装着モデルのアイテム着脱を処理する方法及びそのシステムに関し、特に、NFT化されたアバターの着せ替えを処理する方法及びそのシステムに関するものである。
【背景技術】
【0002】
(メタバースとアバター)
現在、インターネット上の三次元仮想空間である「メタバース」が注目されている。
【0003】
ゲームを含めて様々な種類のメタバースが存在するが、一般に、ユーザはメタバース内で、アバター(自分の分身)を操作して、ネットに繋がれたオンライン上で、他のユーザと交流したり、敵を倒したりといった別世界でのゲームや生活を楽しめる。このことにより、ユーザは、まるで自分自身がメタバース内に入り込んでいるような感覚を得ることができるのである。
【0004】
また、このようなメタバース内では、ユーザは様々なアイテムを揃えてアバターに装着したり着せ替えを行うことによってアバターのアップグレードをおこなうことができるようになっている。このことよってメタバースでの体験をより向上させることができるように工夫されている。
【0005】
(ブロックチェーンとアバター)
このメタバースが注目されている別の理由は、ブロックチェーン技術との組み合せにより、このメタバース内で使用されるデジタルデータに資産性を持たせ安全性や利便性を高めることができるからである。
【0006】
すなわち、ブロックチェーンを活用してメタバースを構築すると、メタバース内に資産を生み出すことが可能になる。すなわち、NFTの技術を利用し、アバターやゲーム内のアイテムといった資産に作者や所有者の情報を追記することで、メタバース内の資産に唯一性を持たせることができるのである。
【0007】
このことにより、NFTは、メタバース内のアバターを含むデジタルコンテンツを資産化し、インターネット上で流通可能とする。実際、NFTの売買は既に世界中で行われており、最大手のNFTマーケットプレイスであるOpenSea(登録商標)は2021年8月の流通総額が3500億円を超える。
【0008】
このようなNFTマーケットプレイスにおいては、取引をしたい者が自己の保有するデジタルコンテンツを表示することによってそのコンテンツに係るNFTに価格を付与するかあるいはオークション方式によって売り出すことが行われている。
【発明の概要】
【発明が解決しようとする課題】
【0009】
ところで、ゲームを含む多くのメタバースにおいては、アバターはその特定のメタバース内でのみ使用できるようになっていて、別のメタバースにて使用することができないようになっている。その場合でもアバターをNFT化することができるが、そのメタバース内でしか使用できないことには変わりはない。
【0010】
中には、複数の異なるメタバースに亘って使用することができるものもあるが、特定のメタバース内で購入したアイテムやコスチュームはその特定のメタバース内でしか有効でないため、アバターに装着したアイテムやコスチュームはアバターと共にブロックチェーン上で流通させることはできず、アバターとは切り離して管理しなければならないということがあった。
【0011】
この発明は、このような課題に鑑みてなされたものであり、異なるメタバース間で使用でき、アイテムの着せ替えができるNFT化アバターを提供するものである。
【課題を解決するための手段】
【0012】
上記課題を解決するため、本発明の主要な観点によれば、以下の発明が提供される。
【0013】
(1) コンピュータが、NFT化された被装着モデルへのアイテムの着脱を処理する方法であり、
コンピュータが、被装着モデルを表示するためのデータを格納する工程と、
コンピュータが、被装着モデルに装着するアイテムを表示するためのデータを格納する工程と、
コンピュータが、ブロックチェーン上で前記被装着モデル用のスマートコントラクトを提供する工程と、
コンピュータが、ブロックチェーン上で前記アイテム用のスマートコントラクトを提供する工程と、
コンピュータが、上記被装着モデル用スマートコントラクトと上記被装着データを表示するためのデータとを参照してユーザに被装着モデルを表示する工程と、
コンピュータが、上記アイテム用スマートコントラクトと上記アイテムを表示するためのデータとを参照してユーザにアイテムを表示する工程と、
コンピュータが、ユーザに、被装着モデルにアイテムを試着脱するための試着脱インタフェースを提供する工程と、
コンピュータが、ユーザに、被装着モデルに装着するアイテムを決定させるためのインタフェースを提供する工程と、
コンピュータが、ユーザが被装着モデルに着脱するアイテムを決定したことに基づいて上記ブロックチェーン上で被装着モデル用スマートコントラクトに対して被装着モデルNFTに対して着脱にかかるアイテムNFTを関連付ける若しくは関連付けを解除するトランザクションを行う工程と
を有する
ことを特徴とする方法。
【0014】
(2) 上記(1)記載の方法において、
前記被装着モデルは、アバターである
ことを特徴とする方法。
【0015】
(3) 上記(1)記載の方法において、
さらに、前記被装着モデル用スマートコントラクトに対して上記トランザクションを行ったことに基づいて、前記被装着モデルを表示するためのデータをアイテム着脱後のものに更新する工程をさらに有する
ことを特徴とする方法。
【0016】
(4) 上記(1)記載の方法において、
さらに、着せ替え後の被装着モデルを表示するためのデータに基づいて、アイテム着脱後の被装着モデルを表示するユーザインタフェースを提供する工程
を有する
ことを特徴とする方法。
【0017】
(5) 上記(1)記載の方法において、
前記トランザクションを行う工程は、被装着モデルに装着するアイテムのアイテムNFTの所有アドレスをユーザのウォレットアドレスからアイテムアバターNFTのスマートコントラクトアドレスに変更するトランザクション、被装着モデルから外すアイテムのアイテムNFTの所有アドレスをアイテムアバターNFTのスマートコントラクトアドレスからユーザのウォレットアドレスに変更するトランザクションの両方若しくはいずれか一方のトランザクションを行うものである
ことを特徴とする方法。
【0018】
(6) 上記(5)記載の方法において、
被装着モデルから外すアイテムと装着するアイテムがある場合、
被装着モデルから外すアイテムのアイテムNFTの所有アドレスをアイテムアバターNFTのスマートコントラクトアドレスからユーザのウォレットアドレスに変更するトランザクションを実行した後に、
被装着モデルに装着するアイテムのアイテムNFTの所有アドレスをユーザのウォレットアドレスからアイテムアバターNFTのスマートコントラクトアドレスに変更するトランザクションの実行を許可する
ことを特徴とする方法。
【0019】
(7) 上記(5)記載の方法において、
前記コンピュータが、ユーザに、被装着モデルに装着するアイテムを決定させるためのインタフェースを提供する工程は、
スマートコントラクト毎に、アイテムの装着若しくは取り外すためのトランザクションをユーザに実行させるためのボタン若しくはリンクを上記インタフェースに表示するものである
ことを特徴とする方法。
【0020】
(8) 上記(7)記載の方法において、
アイテムの装着するためのトランザクションをユーザに実行させるためのボタン若しくはリンクは、
アイテムを取り外すためのトランザクションが実行された後にアクティブ若しくは表示されるものである
ことを特徴とする方法。
【0021】
(9) 上記(2)記載の方法において、
さらに、
コンピュータが、上記被装着データを表示するためのデータを、特定のメタバースで使用するために生成し、ダウンロードを許可させる工程
を有することを特徴とする方法。
【0022】
(10) コンピュータが、NFT化された被装着モデルへのアイテムの着脱を処理するシステムであり、
ブロックチェーン上には、前記被装着モデル用のスマートコントラクトと着脱アイテム用のスマートコントラクトとが提供されており、
コンピュータが、被装着モデルを表示するためのデータを格納する被装着モデル表示データ格納部と、
コンピュータが、被装着モデルに装着するアイテムを表示するためのデータを格納するアイテム表示データ格納部と、
コンピュータが、上記被装着モデル用スマートコントラクトと上記被装着データを表示するためのデータとを参照してユーザに被装着モデルを表示する被装着モデル表示部と、
コンピュータが、上記アイテム用スマートコントラクトと上記アイテムを表示するためのデータとを参照してユーザにアイテムを表示するアイテム表示部と、
コンピュータが、ユーザに、被装着モデルにアイテムを試着脱するための試着脱インタフェースを提供する試着インタフェース提供部と、
コンピュータが、ユーザに、被装着モデルに装着するアイテムを決定させるためのインタフェースを提供する決定インタフェース提供部と、
コンピュータが、ユーザが被装着モデルに着脱するアイテムを決定したことに基づいて上記ブロックチェーン上で被装着モデル用スマートコントラクトに対して被装着モデルNFTに対して着脱にかかるアイテムNFTを関連付ける若しくは関連付けを解除するトランザクションを行うスマートコントラクト通信処理部と
を有する
ことを特徴とするシステム。
【0023】
なお、この発明の更なる他の特徴と顕著な効果は次の発明を実施するための最良の形態の項に記載された実施形態及び図面を参照することによって当業者に理解される。
【図面の簡単な説明】
【0024】
【
図1】
図1は、この発明の一実施形態を示すアバターの概略構成図である。
【0025】
【
図2】
図2は、同じく、アイテムを示す概略構成図である。
【0026】
【
図3】
図3は、同じく、着せ替えアバターを示す概略構成図である。
【0027】
【
図4】
図4は、同じく、全体のネットワーク構成を示す概略構成図である。
【0028】
【
図5】
図5は、同じく、アバターNFTのスマートコントラクトを示す概略構成図である。
【0029】
【
図6】
図6は、、同じく、アバターNFT及びアイテムNFTの構成を示す概略構成図である。
【0030】
【
図7】
図7は、同じく、着せ替えアバターを示す概略構成図である。
【0031】
【
図8】
図8は、同じく、アイテムNFTのスマートコントラクトを示す概略構成図である。
【0032】
【
図9】
図9は、同じく、NFTマーケットプレイスにNFTを表示するためのフローチャートである。
【0033】
【
図10】
図10は、同じく、着せ替えアプリを示す概略構成図である。
【0034】
【
図11】
図11は、同じく、ウォレットとの関連付けを示すフローチャートである。
【0035】
【
図12】
図12は、同じく、着せ替え工程を示すフローチャートである。。
【0036】
【
図13】
図13は、同じく、スマートコントラクトへの書き込みを示すフローチャートである。
【0037】
【
図14】
図14は、同じく、アプリのインタフェースを示す概略構成図である。
【0038】
【
図15】
図15は、同じく、スマートコントラクトを示す概略構成図である。
【0039】
【
図16】
図16は、同じく、スマートコントラクトを示す概略構成図である。
【0040】
【
図17】
図17は、同じく、アバターNFTとアイテムNFTの紐づけを示す概略構成図である。
【0041】
【
図18】
図18は、同じく、スマートコントラクトを示す概略構成図である。
【0042】
【
図19】
図19は、同じく、スマートコントラクトを示す概略構成図である。
【0043】
【
図20】
図20は、同じく、アバターNFTとアイテムNFTの紐づけを示す概略構成図である。
【0044】
【
図21】
図21は、同じく、アバターデータ生成サーバを示す概略構成図である。
【0045】
【
図22】
図22は、同じく、着せ替えアプリのインタフェースを示す概略構成図である。
【0046】
【
図23】
図23は、同じく、着せ替えアプリのインタフェースを示す概略構成図である。
【0047】
【
図24】
図24は、同じく、着せ替えアプリのインタフェースを示す概略構成図である。
【0048】
【
図25】
図25は、同じく、着せ替えアプリのインタフェースを示す概略構成図である。
【0049】
【
図26】
図26は、同じく、着せ替えアプリのインタフェースを示す概略構成図である。
【0050】
【
図27】
図27は、同じく、着せ替えアプリのインタフェースを示す概略構成図である。
【0051】
【
図28】
図28は、同じく、着せ替えアプリのインタフェースを示す概略構成図である。
【0052】
【
図29】
図29は、同じく、アバターNFTとアイテムNFTの紐づけのトランザクションを示すフローチャートである。
【発明を実施するための形態】
【0053】
以下、本発明の一実施形態を添付した図面を参照しつつ詳細に説明する。
【0054】
本発明の一実施形態の構成を説明する前に、本実施形態によって生成できるアバター及びアバターNFTの概念について説明する。
【0055】
1.アバター
アバターとは、前述したように、メタバース空間で利用する、自分を表すための三次元形状である。
【0056】
【0057】
素体アバターとは、ほぼ裸の状態のキャラクターであり、何もアイテムを身に着けていない状態のアバターを意味する。この実施形態では、この素体アバターに、
図2に示すような、帽子2や時計3、シューズ4、パンツ5、シャツ6などのアイテムを装着して
図3に示すような着せ替えアバターを生成できるものである。
【0058】
このように、着せ替えアバター7を生成することにより自分と似たアバターを作成したり、自分の好みを他人に表示することができるようになる。
【0059】
2.アバターNFT
上記素体アバター1(
図1)は、あとで詳細に説明するアバターNFT生成スマートコントラクトによってNFT化されており、アバターNFTトークンIDがそのNFTの所有者アドレス(ウォレットアドレス)と関連付けられてブロックチェーン上のスマートコントラクト内に変数として格納される。
【0060】
上記アバターの3次元データは、上記アバターNFT生成スマートコントラクトによって上記アバターNFTトークンIDで参照できるようになっていて、この3次元形状データを処理することで、
図3に示すような外観の素体アバターをメタバース上で表示し動かすことができるようになっている。
【0061】
そして、この素体アバターにアイテムを装着して上記着せ替えアバターを生成した場合には、上記アバターNFTIDで参照する3次元形状データがこの着せ替えアバターを表示するためのものに更新され、メタバース上で表示したり動かしたりすることができるようになる。
【0062】
また、この着せ替えアバターはNFT化されているから、この着せ替えによりアイテムを装着した状態でNFTマーケットプレイス上で取引できるようになっている。
【0063】
この実施形態では、上記着せ替えにより装着したアイテムもNFT化されており、素体アバターに装着する前は素体アバターとは独立してNFTマーケットプレイスやメタバース内で他人に譲渡することができるようになっているが、素体アバターに装着した後はこのアイテムのNFTは素体アバターのIDに親子として関連付けられ、このアバターと一緒に譲渡できるようになる。
【0064】
本発明の一実施形態は、上記のように、NFT化されたアバター1の着せ替えを行うシステムを提供するものである。以下、詳細に説明する。
【0065】
3.全体構成
図4は、本発明の一実施形態であるアバターデータ生成システム18を示すものである。
【0066】
このシステム8は、アバターデータ生成サーバ9を有し、このアバターデータ生成サーバ9は、インターネット10を介してブロックチェーンネットワーク13、NFTマーケットプレイス12、ウォレットと連動するWebサービス14に相互通信可能に接続されている。
【0067】
4.ブロックチェーンネットワーク
上記ブロックチェーンネットワーク11は、イーサリアムやサイドチェーンのPolygonなど、スマートコントラクトを実行できるプログラムがインストールされた複数のサーバ/コンピュータ群により構成されるネットワークである。そして、このブロックチェーン上で、アバターやアイテムのNFTデータがすべて保存・管理されるようになっている。
【0068】
5.スマートコントラクト
本発明におけるアバターのNFT化を実現するために、ブロックチェーンネットワーク11上にアバターNFT生成用スマートコントラクト16とアイテムNFT用スマートコントラクト17がインストールされている(
図4)。
【0069】
ここで、スマートコントラクトとは、イーサリアムなどのブロックチェーン上で動作するプログラムであり、内部に整数や文字列、配列などの変数を保持できると共に、外部から呼び出すための関数が定義されている。
【0070】
この実施形態で用いるスマートコントラクトは、アバターNFT用のもの16と、アバターに装着するアイテム用のもの17とがある。以下説明する。
【0071】
6.アバターNFT用スマートコントラクト
図5に示すように、上記アバターNFT用スマートコントラクト16は、NFT作成関数20と、NFT所有者取得関数21と、全アバターNFT取得関数22と、NFTメタデータURL取得関数23と、NFT所有者変更関数24と、アイテムNFT紐づけ/解除関数25とを有する。
【0072】
ユーザや他のシステムが上記ブロックチェーン11上のスマートコントラクト16の上記各関数20~25にアクセスすることで、スマートコントラクト上で上記の各関数20~25を実行され、その実行結果をスマートコントラクトの変数に書き込むことで、改変がほぼ不可能な記録すなわちNFTとしてブロックチェーン上に記録することができるのである。
【0073】
図6は、上記関数により生成若しくは呼び出されるアバターNFTおよびアイテムNFTを示す概念図である。
【0074】
この図では、ユーザはアバター1、2と、このアバターに装着可能なアイテム1~6を保有しており、自分のウォレットに関連付けられている。ここで、アイテム1~3はまだ装着前のアイテムであり、アバター1はアイテム装着前の素体アバター(
図1の1)である。また、アイテム4~6はアバター2に装着されており、したがって、アバター2は着せ替えアバター(
図3の7)である。このようにアイテムを素体アバターに装着した場合、アバターとアイテムは1対多の親子関係として関連付けられる。
【0075】
このような親子関係は、この実施形態では、ERC998をベースとしたERC721トークンにより実装されている。
図7は、本実施例における着せ替えアバター7における、素体アバターNFT1と着せ替えアイテムNFT5~6の親子関係を示す概略図である。
【0076】
このようなNFTを示す変数は、スマートコントラクトにおいて、例えば
図5に示すように格納されている。
【0077】
すなわち、着せ替えアバターNFT(アバターNFTトークンID1~3)は、当該着せ替えアバターNFTを誰が所有しているかを判断するためにERC721トークンの配列28が実装され、アバターNFTと一対多で関連付けられているアイテムNFT情報を管理するためERC998トークンの配列29が実装されているのである。
【0078】
7.アイテムNFT用スマートコントラクト
図8は、アイテムNFT用スマートコントラクト17を示す概略図である。
【0079】
アイテムNFT用スマートコントラクト17は、アイテムのデザインを行ったアーティスト別に用意されたものであり、NFT作成関数30と、NFT所有者取得関数31と、全アバターNFT取得関数32と、NFTメタデータURL取得関数33と、NFT所有者変更関数34と、アイテムNFT紐づけ/解除関数35とを有する
ここで、アイテムNFTは、この実施形態では、ERC721(もしくはERC1155)トークンであり、アバターNFTに紐付けるアイテムを表現するものである。
【0080】
アイテムとしては、この実施形態では以下のような種類があるが、これに限定されるものではない。
【0081】
(1)帽子
(2)上着
(3)ズボン
(4)靴
(5)ネックレス
(6)左右のリストバンド
(7)左右の手持ちアイテム(かばん、カメラなど)
上記アイテムNFTは、アバターNFTと違いERC721の機能のみで実装されているものであり、上述したように、アーティスト別のスマートコントラクトで管理されている。なお、上記したように、アバターNFT用スマートコントラクトで管理されている、アバターNFTに一対多で紐付いているアイテムNFTを保存する配列では、このアイテムNFT用コントラクトで管理されたアイテムNFTのスマートコントラクトアドレスと「アイテムNFTのトークンID」がセットで保存されている(
図5)。
【0082】
8.アバターNFT及びアイテムNFTのメタデータ
この実施例におけるアバターNFT用スマートコントラクト16では、着せ替えアバター及びアイテムNFTに関連付けられたメタデータが格納されているURLを返す関数(NFTメタデータURL取得関数23)が上記スマートコントラクト16に記憶されている(
図5)。
【0083】
ここで、この実施形態の着せ替えアイテムNFTのメタデータは、通常のNFTのメタデータに加え、アバターNFTとアイテムNFTの関連付ける記載と、アイテムNFTを装着しているアバターの画像を生成するためのデータが追加され、スマートコントラクト上に保存されるようになっている。
【0084】
そして、着せ替えアバターNFTのメタデータ内には、この実施形態では、名前、説明、アバター画像URL、アバター動画URL、アバター3DデータURL、取り付けられるアイテムの種類などの制限、その他アバターのサイズなどのプロパティが記述されている。
【0085】
また、この実施形態では、このアバターNFTに取り付けられるNFTをアイテムNFTのみに制限できる機能提供するので、そのための情報もメタデータに記録されている。なお、この場合、設定により、他の会社が提供するNFTも利用できるようにすることが可能である。
【0086】
一方、アイテムNFTのメタデータとしては、この実施形態では、アイテムの名前、アイテムの説明、アイテム画像URL、アイテム動画URL、アイテム3DデータURL、取り付け可能なアバターNFTの制限、その他アイテムのサイズなどのプロパティが記述格納されている。
【0087】
なお、アイテムNFTは、アバターNFTと違いERC721の機能のみで実装されている。
【0088】
9.アバターデータ生成サーバ
次に、本実施形態のアバター生成サーバ9について説明する。
【0089】
このアバター生成サーバ9は、ブロックチェーンネットワーク11の外側のインターネット10上に設けられているものであり、
図21に示すように、メタ情報データベース38と、アバター/アイテム画像/3次元データコンテンツストレージ39と、NFT用メタデータ生成API40と、アバターレンダー用HTML41と、アバターレンダリング・画像合成サーバ42と、アバターデータ生成・エクスポートサーバ43と、試着・着せ替え処理部46を有する。
【0090】
以下説明する。
【0091】
10.メタデータ格納データベース
メタデータ格納データベース38は、上記したアバター及びアイテムのメタデータを格納するものである。このメタデータは、NFT用メタデータ生成API40に対して外部からメタデータ取得リクエストがあると、ここから所望のメタデータが取り出されて外部に提供されるものである。
【0092】
11.アバター/アイテム画像/3次元データコンテンツストレージ
このアバター/アイテム画像/3次元データコンテンツストレージ39は、アバターやアイテムの動的に生成された画像や3Dデータ、動画などのコンテンツを保管するものである。特定のアバターについて後述するように着せ替えが行われると、そのアバターの画像及び3次元データは着せ替え後のものに更新されるようになっている。
【0093】
12.NFT用メタデータ生成API
このAPIは、NFTの名前や説明等のメタデータと、画像や動画などのアバター/アイテムデータの情報をJSON形式で返すように構成されているものである。
【0094】
すなわち、NFTマーケットプレイスなどのサービスやアプリが、ユーザの端末上にNFTの情報や画像や動画を表示しようとする場合、NFTマーケットプレイスサーバおよびアプリからスマートコントラクトのNFTメタデータURL取得関数が呼び出し、これにより、NFTの表示に関する情報を取得できるURLを取得する。このURLは、NFT用メタデータ生成APIを参照するアドレスであり、このURLを上記サービスやアプリから呼び出すことで、NFTのメタデータ情報を、このアバター生成サーバからJSON形式で取得でき、サービスおよびアプリ内にNFTの名前や画像、動画を表示することができるようになるのである。
【0095】
すなわち、上述したように、NFTのスマートコントラクト16,17には、各NFT固有のメタデータを取得するためのメタデータ取得先URLを設定・記憶できるようになっている。
【0096】
そして、このAPI40は、コレクションのIDおよびアバター/アイテムNFTのIDでリクエストがなされたときに、アバター/アイテムメタ情報データベース38から取得したNFT用のメタデータを返すものである。したがって、NFTのメタデータURLとしてこのAPI40のURLがセットされているものである。
【0097】
そして、OpenSeaなどのNFTマーケットプレイスなどで所望のNFTを表示するときにこのメタデータAPI40から取得されたメタデータをもとに、当該所望のアバターやアイテムに関する表示が行われるのである。
【0098】
図9は、NFTマーケットプレイス12でアバターNFT若しくはアイテムNFTを表示するまでのシーケンスを示すものである。
【0099】
すなわち、まず、ユーザがNFTマーケットプレイス12でNFTの詳細画面を開くために詳細ボタンをクリックする。すると、ブラウザによりNFTマーケットプレイスサーバ12にページのリクエストが届き、NFTマーケットプレイスサーバ12はまずNFTのスマートコントラクト16,17のメタデータURL取得関数を呼び出し、該当のNFTIDのメタデータURLを取得する。そのメタデータURLに対してNFTマーケットプレイスサーバ12がHTTPでGETリクエストを送る。
【0100】
そのメタデータURLはNFT用メタデータ生成API40のURLとなっており、メタデータ生成API40はTYPE(avatarかitem)、COLLECTION_ID(スマートコントラクトごとに設定されるID)、NFT_IDの3つのURLパラメータを取得し、それらの情報を利用して、メタ情報データベース38から該当NFTのメタデータJSONを取得する。そのメタデータJSONをNFTマーケットプレイスサーバ12に返却し、その情報をもとにNFTの名前やNFT画像や動画のURL(アバターレンダー用HTML41)を組み込みNFT詳細画面を構築するのである。
【0101】
例:アバターのメタデータAPI40は以下のTYPE(avatarかitem)、COLLECTION_ID(スマートコントラクトごとに設定されるID)、NFT_IDの3つのURLパラメータとして指定される。
【0102】
https://API.metabaword.com/v1/TYPE/COLLECTION_ID/avatar/NFT_ID
以下はタイプがavatar、コレクションID: shimeji、NFTのID: 1のアバターのメタデータURL
https://API.metabaword.com/v1/avatar/shimeji/avatar/1
13.アバターレンダー用HTMLサーバ
アバターNFTの表示方法として、この実施形態では、画像、動画、3Dデータ、HTMLの4種類で表示するようになっている。
【0103】
このアバターレンダー用HTMLサーバ41は、上記のうちHTMLでの表示をするために使用される。
【0104】
このアバターレンダー用HTMLサーバ41はNFTマーケットプレイス12のWebページ内に<iframe>で組み込めるページを提供するものであり、基本的にはWebGLでアバターを3D表示し、ユーザが簡単な操作をすることが可能となっている。
【0105】
主に、OpenSea等のNFTマーケットプレイス12でHTML組み込みが可能なところで表示する場合はこのHTMLが利用される。
14.アバターレンダリング&画像合成サーバ
このサーバ42は、アバターNFTの表示方法のうち「画像」や動画として出力する場合、アバターおよびアイテムの3Dデータ39をサーバ内でレンダリングし、画像や動画として出力することができるためのサーバである。
【0106】
アバターNFTの構成が変更された場合は、毎回レンダリングが行われ画像が上記ストレージ39に保存される。
【0107】
15.アバターデータ生成&エクスポートサーバ
このサーバ43は、各種メタバースで利用できるアバターデータを生成するためのサーバである。
【0108】
すなわち、一般に、メタバース毎に、利用できる3Dフォーマットが異なったり、3Dデータの機能制限が存在する。そのため、このサーバ43は、アバターNFT/アイテムNFTの3Dデータから、メタバースごとに合わせた3Dフォーマットに変換して3Dデータをエクスポートしたり、逆に変換してインポートする機能を提供するものである。このコンバートされたデータは、前記3Dデータストレージ39に格納され、それを取り出すためのURLが生成される。
【0109】
16.着せ替えアプリ
図10の中央左に示すのは、ユーザのスマートフォンにインストールされた着せ替え用アプリ45若しくは前記サーバ9の試着・着せ替え処理部46を示す概略構成図である。
【0110】
この着せ替えアプリ45(若しくは試着・着せ替え処理部46(以下、合わせて着せ替えアプリ45という))は、トップ/メニュー画面表示部47と、アバター用メタバース表示部48と、メタバースデータ通信部49と、アバター着せ替え処理部50と、メタバサーバ(着せ替えサーバ)通信部51と、スマートコントラクト通信部52と、ウォレット連携部53とを有する。
【0111】
以下、この着せ替えアプリ45の各構成部47~53の構成及び機能を、このシステムでアバターの着せ替えを行い、着せ替えアバターの三次元データの生成、画像・動画の生成及び着せ替えアバターNFTの形成を行う動作の説明を通じて説明する。
【0112】
17.動作
(17-1)アバターNFTおよびアイテムNFTの購入
まず、ユーザは、OpenSea等のNFTマーケットプレイスサーバ12に自分のウォレットでログインし、アバターやアイテムを表示させて購入する。
図9はこのアバターやアイテムを表示する工程を示すものである。
【0113】
すなわち、この工程は以下のように実行される。
【0114】
Step1 ユーザがNFTマーケットプレイス12のインタフェースを自己のブラウザ上に表示させた状態でNFTの詳細ボタンをクリック。
【0115】
Step2 ユーザからNFT詳細画面の描画リクエストがNFTマーケットプレイス12に送信される。
【0116】
Step 3 NFTマーケットプレイス12が該当のNFTのスマートコントラクトアドレスとNFTのトークンIDを利用して、スマートコントラクト16,17のメタデータ取得関数を呼び出すためにブロックチェーン2にアクセスする。
【0117】
Step4 ブロックチェーン2上のスマートコントラクト16,17が指定のNFTのトークンIDのメタデータURLを返す。
【0118】
Step5 NFTマーケットプレイス12が、スマートコントラクト16,17から送られてきたメタデータURLをHTTPでNFT用メタデータ生成API40にリクエストする。
【0119】
Step 6 NFT用メタデータ生成API40は、リクエストURLからNFTタイプコレクションID、NFTのトークンIDを取得し、メタ情報データベースから該当のメタデータを取得する
Step 7 NFT用メタデータ生成API40は、メタ情報データベース38から取得したメタデータをNFTマーケットプレイスサーバに返す
Step 8 NFTマーケットプレイス12は、メタデータに基づき、name値からNFTの名前、image値からNFTの画像のURL、を取り出し詳細画面に埋め込んでブラウザに返却する
Step 9 ユーザは、ブラウザ上で、前記アバター&アイテム画像3Dデータストレージ39内のデータを参照し、NFTの名前や画像が表示された詳細ページを閲覧できる。
【0120】
ここで、アバターNFTは全くアイテムNFTが紐付いていない状態(素体アバター)で販売、もしくは、事前にアイテムNFTを紐付けた状態(着せ替えアバター)で販売される。
【0121】
ユーザがNFT購入した後は、自分のウォレットにアバターNFTやアイテムNFTが紐づくようになる。
【0122】
(17-2)着せ替えバアプリを立ち上げる
アバターやアイテムのNFTを購入後、ユーザは自己のスマートフォン上で着せ替えアプリ45あるいはブラウザを立ち上げると、
図11に示す工程により、上述したNFTマーケットで購入したときのウォレットでアプリにログインすることができる。
【0123】
すなわち、この工程は、以下のステップが実行される。
【0124】
Step1 ユーザがアプリを開く、若しくはブラウザでサーバ9に接続する。
【0125】
Step2 ユーザがまだログインしていない場合、上記サーバ9若しくはアプリは、「ウォレットでログインボタン」を表示する。
【0126】
Step3 ユーザが自己のウォレットでログインボタンを押す。このログインは、アプリの拡張機能若しくはブラウザの拡張機能により提供される。
【0127】
Step4 上記ウォレット連携部53アプリ若しくはブラウザがウォレットを開く。
【0128】
Step5 アバター着せ替えアプリもしくはWebページとウォレットを連携してよいかをユーザに尋ねる。
【0129】
Step6 ウォレット上でユーザが許可を選択
Step7 ウォレットから再度アプリに遷移、もしくはユーザが自らアプリを再表示する。
【0130】
Step8 前記ウォレット連携部53は連携を完了し、ウォレットと連携完了とアプリ若しくはブラウザ上に表示する。このことで、ウォレットを用いてNFTの売買及び着せ替えが可能になる。
【0131】
(17-3)着せ替えを行うアバターの選択
アプリにログインすると、
図12に示す工程により、上記トップメニュー画面表示部47及びアバター用メタバ―ス表示部48及びアバター着せ替え処理部50が、自分の画面で購入したアバターNFTを、画像で一覧表示させる。その中で着せ替えを行いたいアバターを選択する。
【0132】
すなわち、この工程では、以下のステップが実行される。
【0133】
Step1 ユーザが自己の端末でアプリ上或いはブラウザ上で上記サーバ9により提供される着せ替えルームを立ち上げる。
【0134】
Step2 ユーザがアプリ若しくはブラウザから、自己が所有するアバターNFTとアイテムNFTの各種トークンIDをブロックチェーンネットワーク上のスマートコントラクト16,17へリクエストする。
【0135】
Step3 ブロックチェーンネットワークが、ユーザが所有するアバターNFTとアイテムNFTの各種トークンIDをユーザに返却する。
【0136】
Step4 ユーザが所有するアバターNFTとアイテムNFTの各メタデータURLをスマートコントラクト16,17へリクエストする。
【0137】
Step5 ユーザが所有するアバターNFTとアイテムNFTの各メタデータURLを返却する。
【0138】
Step6 アバターNFTおよびアイテムNFTのメタデータJSONをNFT用メタデータ生成API40にリクエストする。
【0139】
Step7 メタデータ生成API40は、メタ情報データベース38に指定のNFTのメタデータをリクエストする。
【0140】
Step8 上記リクエストに対してメタデータが返却される。
【0141】
Step9 アバターNFTおよびアイテムNFTのメタデータJSONをユーザに返却される。
【0142】
Step10 ユーザは、上記アバターNFTおよびアイテムNFTのメタデータ内に存在する3DデータのURLをもとにサーバ9に3Dデータ(画像、動画データ含む)をリクエストする。
【0143】
Step11 サーバは、上記3Dデータコンテンツストレージ39から、アバターNFTおよびアイテムNFTのメタデータ内に存在する3Dデータを返却する。
【0144】
Step12 ユーザは、アバターNFTおよびアイテムNFTの3Dデータ(画像、動画データ)およびNFTの名称などをアプリ上に一覧表示し現在ユーザが保有するアバターNFTおよびアイテムNFTをアプリ45若しくはブラウザ上に表示する。なお、以下、
図22以下に示すインタフェースは、上述したように、上記トップメニュー画面表示部47及びアバター用メタバ―ス表示部48及びアバター着せ替え処理部50により生成されるものである。
【0145】
まず、
図22は、ユーザが所有するアバターNFTおよびアイテムNFTを示す画像が一覧表示するインタフェース59である。この画像は、動画であっても良いし、3Dデータをレンダリングして動的に表示されるものであっても良い。
【0146】
Step13 次に、ユーザは一覧表示されているアバターから1つを選択し(
図22には1つのみ表示されているが、2以上でも良い)、そのアバターに装着させたいアイテムを選択しアバターに試着させる。試着ではスマートコントラクト(ブロックチェーン)に書き込まない。これによりいわゆるガス代を節約することができる。
【0147】
ステップ14 アプリ上のアバターNFTの表示をアップデートさせ、試着したアバターをユーザが確認できる。
【0148】
(17-4)試着室で試着するアイテムを選択し試着を行う(アバター着せ替え処理部50)
図23は、上記Step13で、アバターNFTを選択した場合にポップアップ表示されるインタフェース60である。このインタフェースで「Dress UP」ボタンを押すと、
図14に示すようなインタフェースが提供され、着せ替えを行うことができる。
図24は、
図14の実際のアプリインタフェース61である。
【0149】
このインタフェースでは、試着を行うアバターが上部に表示され、下部には自己が所有するアイテムNFTが、アイテムの種類別に画像で一覧表示される。ユーザはこのリストから、1つのアイテムNFTを選択すると、上部アバターに実際に試着されたような表示に更新される。この表示更新は、前記3Dデータコンテンツストレージ39に格納されたデータを使用してアバターレンダリング画像合成サーバ42によって提供される。
【0150】
この例では、
図24に示したアバターはすでにいくつかのアイテムが装着されてなる「着せ替えアバター」である。したがって、この着せ替えアバターに、同じ種類の新しいアイテムを装着するには、すでに装着されているアイテムを取り外し、新しいアイテムを装着する必要がある。
【0151】
図25は、
図24に示したアバターにおいて、「Remove」ボタンを押して、装着済の全てのアイテムを取り外した状態を示すものである。この例は、下着状態になっているが、一部のアイテム、例えば上着のみを外した状態にしても良い。
【0152】
図26は、
図25に示したアバターに新たなアイテムを装着した状態を示すものである。
【0153】
このタイミングではまだブロックチェーンにはアバターとアイテムの紐付けは行われず、ユーザはガス代を支払うことなくアイテムを着た時のアバターのイメージを確認することができる(
図12)。したがって、様々なアイテムを装着したり外したりして、試着を楽しむことが可能である。
【0154】
(17-5)アバターの試着を終え、アバターの衣装を確定する
試着が完了し、アバターの着せ替えが完了したのち
図26に示すDoneボタン(
図14に示す画面下部の「決定」ボタン)を押すことで、
図13に示す工程によりブロックチェーンにアバターNFTとアイテムNFTの紐付けをアップデートする。
【0155】
すなわち、この工程は、以下のステップにより実現される。
【0156】
Step1 ユーザがアプリ上で着せ替えを終え着せ替え完了(Done)ボタンを押す。
【0157】
Step2 アプリ45のスマートコントラクト通信部52が、ユーザにトランザクションを確認させるためのインターフェース(
図27の62)を生成し、ユーザがトランザクションボタン63,64を操作することで、スマートコントラクト16,17のアイテムNFT紐付け/解除関数25を呼び出し、上記着せ替えに応じたNFT紐づけ解除指令を与える。
【0158】
Step3 上記アイテムNFT紐付け/解除関数25により、アバターNFTに紐づくアイテムNFTの構成を着せ替え後のものへの変更が完了する。
【0159】
Step4 アバターNFTの画像や動画を生成するように画像合成サーバ42にリクエスト。
【0160】
Step5 合成サーバ42は、該当のアイテムNFTのメタデータをメタデータ生成API40にリクエストする。
【0161】
Step6 API40は、メタ情報データベース38に指定のNFTのメタデータをリクエストする。
【0162】
Step7 メタ状態データベース38は、メタデータを返却する。
【0163】
Step8 データベース38は、NFTの3DデータのURLを含んだメタデータJSONを合成サーバ42に返す。
【0164】
Step9 上記URLに基づいて、合成サーバ42は、アバター&アイテム画像&3Dデータコンテンツストレージ39へ3Dデータをリクエストする。
【0165】
Step10 ストレージ39は、合成サーバ42に、アバターおよびアイテムNFTの3Dデータを返却する。
【0166】
Step11 合成サーバ42は、3DデータをアバターNFTとアイテムNFTの構成をもとに3Dデータを構築しレンダリングする。
【0167】
Step12 合成サーバ42は、レンダリング画像もしくは動画をストレージ39に格納する。
【0168】
Step13 ストレージ39は、合成サーバ42に対してファイル書込み完了を通知。
【0169】
Step14 合成サーバ42は、着せ替え後のアバターNFTの画像/動画の出力が完了した旨をアプリに通知する。
【0170】
Step15 ユーザは、着せ替え後のアバターNFTの画像/動画を確認する。この着せ替えアバターの画像は、上記アバター&アイテム画像&3Dデータコンテンツストレージ39から取り出されて表示される。
【0171】
このことにより、もともとは、アバターNFT、アイテムNFTはすべて自分のウォレットに紐付いていたものが、トランザクションボタンを押すことで、アイテムNFTが自分のウォレットから外れ、アバターNFTに紐付けられることになる。
【0172】
したがって、このタイミングで初めてブロックチェーンに書き込まれガス代が発生することになる。
【0173】
なお、すでに着せ替え済みのアバターに着せ替えを実行するには、少なくとも、アイテム取り外しとアイテム装着の2回の書き込みを行う必要がある。
図27は、この実施形態の書き込み実行のためのインタフェース62を示すものである。
【0174】
すなわち、
図24に示す着せ替えアバターを、
図26に示すものに着せ替えたのち、Doneボタンを押すと、
図27に示すポップインタフェース62がアプリ上に表示される。
【0175】
この場合、この実施形態では、この図に示すStep1とStep2の2回のブロックチェーンへの書き込みトランザクションを実行する。
【0176】
Step1では、
図24から
図25に示す状態へ、Step2では、
図25から
図26に示す状態へ書き込みトランザクションを行うものである。なお、この実施形態では、Step1のトランザクションが実行される前にStep2のトランザクションが実行されることを防止するために、Step1のトランザクションボタン63が押されて書き込みが完了するまでは、Step2のトランザクションボタン64をアクティブにしないように構成されている(
図29参照)(なおこのボタン63,64はリンク表示でも良い)。
【0177】
【0178】
すなわち、実際の着せ替えにおいては、異なるアイテムが同一のコントラクトである場合及び異なるアイテムが複数異なるコントラクトである場合が含まれる。
【0179】
例えば、種類の異なるアイテム、例えばTシャツと靴とが同一のコントラクトに属する場合がある。着せ替えにかかるアイテムが異なる複数のコントラクトに亘る場合には、コントラクトごとに着脱トランザクションが発生することになる。
【0180】
言い換えると、同一コントラクトのアイテムの場合には、1つのトランザクションにマージすることができる。ただし、その場合でも、取り外しと取り付けでは別トランザクションになる。
【0181】
このようにすべてのトランザクションが実行されると、上記
図13のStep11及び12に示されるように、着せ替え後のアバターNFTとアイテムNFTの構成をもとにアバターレンダリング&画像合成サーバ42により3Dデータが構築されその画像及び動画がレンダリングされることになる。
【0182】
このことで、着せ替えNFTのサムネイルも更新され、
図28に示すようなものになる。これに伴い
図22に示すインタフェースでも、着せ替え後のサムネイルに更新され、NFTマーケットプレイス上に表示されるサムネイル画像も新しいものに切り替わる。
【0183】
なお、上記
図29のフローチャートに示すように、着せ替えを途中でキャンセルすることができる。すなわち、着せ替えが複数のトランザクションにまたがる場合、全てのトランザクションを実行せずにキャンセルすることもできるし、1つのトランザクションを実行したところで、それ以降のトランザクションをキャンセルすることができる。
【0184】
その場合には、キャンセル前の状態で着せ替えが中断されるから、前記アバターレンダリング&合成サーバは、その状態の3Dデータ、画像、動画をレンダリングして、アバター&アイテム画像&3Dデータコンテンツデータストレージに格納するようにする。
【0185】
また、ブロックチェーンへの書込みを「決定/Done」ボタンタップ時に行わず、一旦アプリのデータベースにアバター/アイテムの紐付けを書き込むことで、アプリ内のメタバースで着せ替えたアバターをアプリ内のメタバースで利用することができるようにしても良い。その場合、別途ユーザ画面などに「ブロックチェーンに書き込む」ボタンを用意し、ユーザが自らガス代が発生するブロックチェーンの書込みをできるようにしても良い。
【0186】
また、この実施形態では、ブロックチェーンにアバターNFTやアイテムNFTの構成を変更する書込みを行ったタイミングで、サーバ9内に保存されている画像や動画、メタバース用3Dデータの更新を行うようになっている。そのときに、アバターレンダリング&画像合成サーバやアバターデータ生成エクスポートサーバが自動的に稼働し、現在のアバターNFTの構成をもとに自動的に画像や動画、メタバース用3Dデータのエクスポートが行われ、生成された画像や動画、三次元データが上記ストレージに格納される。そして、以後、この更新されたデータをもって着せ替え後のアバターの表示を行うことができる。
【0187】
(17-6)他メタバースで利用するための3Dデータの取得
アバターの着せ替えを行ったあと、そのアバター(着せ替えアバター)を他メタバースで利用するときには、メタバース用3Dデータのダウンロードが必要となる。
【0188】
これに対応するため、本実施形態では、アプリから若しくはメタバサーバ9により提供されるWebサイトにウォレットでログインすると、いま自分が所持しているアバターNFTの一覧が画像で表示される(
図22)。そして、所望のアバター画像をクリックするとそのアバターのメタバース用3Dデータをダウンロードするためのリンクが表示され、ダウンロードを行うことができるようなっている。
【0189】
このリンクは、前記エクスポートAPI43により提供されるもので、前記VRChatやClusterなど各種メタバースごとに別れており、目的のメタバース用の3Dデータリンクをクリックしてダウンロードすることができるように構成されている。
【0190】
18.アバターの着せ替え前と後のスマートコントラクトの配列・変数の変化について
次に、前記アバター着せ替え処理部50及びスマートコントラクト通信部52によって実行されるアバターの着せ替え前と着せ替え後のスマートコントラクトの変数の書き換えについて
図15~
図17および
図18~
図20を参照して具体的に説明する。
【0191】
(18-1)アバターNFTの着せ替えする前
図15は、着せ替え前のアバターNFT用スマートコントラクト、
図16は着せ替え前のアイテムNFT用スマートコントラクト、
図17は着せ替え前のアバターおよびアイテムの表示を示すものである。
【0192】
この状態では、ユーザはウォレットアドレス0xB3CE007....のウォレットを持っており、そのウォレットには、まだ何も来ていないアバターNFT(素体のままのアバター)とスマートコントラクトアドレス0x27275BA…と0xC92FF12...の2つのスマートコントラクトに存在する合計7個のアイテムNFTが紐付いている。
【0193】
アバターNFTを見ると、ERC998のための配列には何も入っておらず、このアバターNFTのスマートコントラクトにあるアバターには一切アイテムNFTが紐付いていないことを表している(
図15)。ERC721のための配列にはアバターNFTのトークンID1がユーザに紐付いているというデータがある。
【0194】
一方アイテムNFTの方では、
図16に示すように、2つのスマートコントラクトのアイテムNFTはすべてユーザが所有しているということになっている。
【0195】
(18-2)アバターNFTのきせかえを行った後
図18は、着せ替え後のアバターNFT用スマートコントラクト、
図19は着せ替え後のアイテムNFT用スマートコントラクト、
図20は着せ替え後のアバターおよびアイテムの表示を示すものである。
【0196】
すなわち、上記着せ替え前の状態から、ユーザがアプリの試着室にて、スマートコントラクトアドレス0x27275BA…のトークンID1,2,3,4のアイテム、およびスマートコントラクトアドレス0xC92FF12...のトークンID3のアイテムNFTをアバターNFTに着せて、決定ボタン(上記Doneボタン、トランザクションボタン(
図26、
図27参照))を押したとする。
【0197】
その場合、まず、着せる予定のアイテムNFTすべての所有アドレスをユーザのウォレットアドレスからアイテムアバターNFTのスマートコントラクトアドレスに変更する。こうすることで、アイテムNFTの所有権がアバターNFT(のスマートコントラクト)のほうに移ることとなる。
【0198】
その後、アバターNFTのスマートコントラクトの「アイテムNFT紐付け/解除関数」を呼び出し、アバターNFTに着せたアイテムNFTのスマートコントラクトアドレスとアイテムNFTのトークンIDをセットにしてERC998用の配列にすべて保存する。
【0199】
このデータ更新により、ユーザが所有するNFTはアバターNFT1とアイテムNFT(スマートコントラクトアドレス0xC92FF12...)のトークンID1,2 のみとなる。
【0200】
そして、このように書き換えられたアバターNFTに基づいて、上記サーバのメタデータ及び画像・動画、三次元形状データが更新され、
図20、
図28に示すように着せ替え後のアバターが表示されることになる。
【0201】
以上、本発明の一実施形態を説明したが、この発明は上記一実施形態に限定されるものではなく、発明の要旨を変更しない範囲で種々変形可能である。
【0202】
例えば、上記一実施例では、アイテムを着脱する対象である非着脱モデルはアバターであったがこれに限定されるものではない。
【0203】
例えばアバター以外のゲームアイテム、例えば、乗用車に各種パーツアイテムを着脱する場合にも適用可能である。
【0204】
また、上記一実施形態では、本発明の各構成要件はAPI等で実装されているが、同様の機能を奏する限りどのような手段であっても良い。
【0205】
また、上記一実施例では、アイテムメタ情報データベース38やアバター&アイテム画像&3Dデータストレージ39を含む各構成部は、サーバ9に設けられていたが、複数のサーバーや他のサービス業者のサーバに亘って分散して設けられていてもよい。すなわち、アバターに装着するアイテムの画像や3Dデータが、他のサービス業者のデータサーバによって供給されるようになっていても良い。これは、アイテムメータ情報データベースに格納されるメタ情報についても同様である。
【手続補正書】
【提出日】2022-12-12
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
コンピュータが、NFT化された被装着モデルへのアイテムの着脱を処理する方法であり、
コンピュータが、ブロックチェーン上で被装着モデル用のスマートコントラクトを提供する工程と、
コンピュータが、ブロックチェーン上でアイテム用のスマートコントラクトを提供する工程と、
コンピュータが、ユーザに、被装着モデルに着脱するアイテムを決定させるためのインタフェースを提供する工程と、
コンピュータが、ユーザが被装着モデルに着脱するアイテムを決定したことに基づいて上記ブロックチェーン上で被装着モデル用スマートコントラクトに対して被装着モデルNFTに対して着脱にかかるアイテムNFTを関連付ける若しくは関連付けを解除するトランザクションを行う工程と
を有する
ことを特徴とする方法。
【請求項2】
請求項1記載の方法において、
前記被装着モデルは、アバターである
ことを特徴とする方法。
【請求項3】
請求項1記載の方法において、
さらに、前記被装着モデル用スマートコントラクトに対して上記トランザクションを行ったことに基づいて、前記被装着モデルを表示するためのデータをアイテム着脱後のものに更新して格納する工程をさらに有する
ことを特徴とする方法。
【請求項4】
請求項1記載の方法において、
さらに、アイテム着脱後の被装着モデルを表示するためのデータに基づいて、アイテム着脱後の被装着モデルを表示するユーザインタフェースを提供する工程
を有する
ことを特徴とする方法。
【請求項5】
請求項1記載の方法において、
前記トランザクションを行う工程は、被装着モデルに装着するアイテムのアイテムNFTの所有アドレスをユーザのウォレットアドレスからアイテムアバターNFTのスマートコントラクトアドレスに変更するトランザクション、被装着モデルから外すアイテムのアイテムNFTの所有アドレスをアイテムアバターNFTのスマートコントラクトアドレスからユーザのウォレットアドレスに変更するトランザクションの両方若しくはいずれか一方のトランザクションを行うものである
ことを特徴とする方法。
【請求項6】
請求項5記載の方法において、
被装着モデルから外すアイテムと装着するアイテムがある場合、
被装着モデルから外すアイテムのアイテムNFTの所有アドレスをアイテムアバターNFTのスマートコントラクトアドレスからユーザのウォレットアドレスに変更するトランザクションを実行した後に、
被装着モデルに装着するアイテムのアイテムNFTの所有アドレスをユーザのウォレットアドレスからアイテムアバターNFTのスマートコントラクトアドレスに変更するトランザクションの実行を許可する
ことを特徴とする方法。
【請求項7】
請求項5記載の方法において、
前記コンピュータが、ユーザに、被装着モデルに装着するアイテムを決定させるためのインタフェースを提供する工程は、
前記アイテム用のスマートコントラクト毎に、アイテムの装着若しくは取り外すためのトランザクションをユーザに実行させるためのボタン若しくはリンクを上記インタフェースに表示するものである
ことを特徴とする方法。
【請求項8】
請求項7記載の方法において、
アイテムの装着するためのトランザクションをユーザに実行させるためのボタン若しくはリンクは、
アイテムを取り外すためのトランザクションが実行された後にアクティブ若しくは表示されるものである
ことを特徴とする方法。
【請求項9】
請求項2記載の方法において、
さらに、
コンピュータが、上記被装着モデルを表示するためのデータを、特定のメタバースで使用するために生成し、ダウンロードを許可させる工程
を有することを特徴とする方法。
【請求項10】
コンピュータが、NFT化された被装着モデルへのアイテムの着脱を処理するシステムであり、
ブロックチェーン上には、前記被装着モデル用のスマートコントラクトと着脱アイテム用のスマートコントラクトとが提供されており、
コンピュータが、ユーザに、被装着モデルに着脱するアイテムを決定させるためのインタフェースを提供する決定インタフェース提供部と、
コンピュータが、ユーザが被装着モデルに着脱するアイテムを決定したことに基づいて上記ブロックチェーン上で被装着モデル用スマートコントラクトに対して被装着モデルNFTに対して着脱にかかるアイテムNFTを関連付ける若しくは関連付けを解除するトランザクションを行うスマートコントラクト通信処理部と
を有する
ことを特徴とするシステム。
【請求項11】
請求項10記載のシステムにおいて、
前記被装着モデルは、アバターである
ことを特徴とするシステム。
【請求項12】
請求項10記載のシステムにおいて、
さらに、前記被装着モデル用スマートコントラクトに対して上記トランザクションを行ったことに基づいて、前記被装着モデルを表示するためのデータをアイテム着脱後のものに更新して格納する工程をさらに有する
ことを特徴とするシステム。
【請求項13】
請求項10記載のシステムにおいて、
さらに、アイテム着脱後の被装着モデルを表示するためのデータに基づいて、アイテム着脱後の被装着モデルを表示するユーザインタフェースを提供する工程
を有する
ことを特徴とするシステム。
【請求項14】
請求項10記載のシステムにおいて、
前記トランザクションを行う工程は、被装着モデルに装着するアイテムのアイテムNFTの所有アドレスをユーザのウォレットアドレスからアイテムアバターNFTのスマートコントラクトアドレスに変更するトランザクション、被装着モデルから外すアイテムのアイテムNFTの所有アドレスをアイテムアバターNFTのスマートコントラクトアドレスからユーザのウォレットアドレスに変更するトランザクションの両方若しくはいずれか一方のトランザクションを行うものである
ことを特徴とするシステム。
【請求項15】
請求項14記載のシステムにおいて、
被装着モデルから外すアイテムと装着するアイテムがある場合、
被装着モデルから外すアイテムのアイテムNFTの所有アドレスをアイテムアバターNFTのスマートコントラクトアドレスからユーザのウォレットアドレスに変更するトランザクションを実行した後に、
被装着モデルに装着するアイテムのアイテムNFTの所有アドレスをユーザのウォレットアドレスからアイテムアバターNFTのスマートコントラクトアドレスに変更するトランザクションの実行を許可する
ことを特徴とするシステム。
【請求項16】
請求項14記載のシステムにおいて、
前記コンピュータが、ユーザに、被装着モデルに装着するアイテムを決定させるためのインタフェースを提供する工程は、
前記アイテム用のスマートコントラクト毎に、アイテムの装着若しくは取り外すためのトランザクションをユーザに実行させるためのボタン若しくはリンクを上記インタフェースに表示するものである
ことを特徴とするシステム。
【請求項17】
請求項16記載のシステムにおいて、
アイテムの装着するためのトランザクションをユーザに実行させるためのボタン若しくはリンクは、
アイテムを取り外すためのトランザクションが実行された後にアクティブ若しくは表示されるものである
ことを特徴とするシステム。
【請求項18】
請求項11記載のシステムにおいて、
さらに、
コンピュータが、上記被装着モデルを表示するためのデータを、特定のメタバースで使用するために生成し、ダウンロードを許可させる工程
を有することを特徴とするシステム。