1. めるほぺNFTチャンネル
  2. #07 ジェネラティブNFTを作っ..
2022-12-08 17:05

#07 ジェネラティブNFTを作った話②

Ninja Dao Web3エンジニアサーバーのDiscordはこちら↓
https://discord.gg/KPM9FPkRM3

本編は3分28秒後から始まります!

#NFT #ジェネラティブNFT
---
stand.fmでは、この放送にいいね・コメント・レター送信ができます。
https://stand.fm/channels/631571948b069b4d0fb9f6fc
00:05
スピーカー 2
こんにちは、とろけるほっぺこと、めるてぃほっぺです。
1歳の男の子がいるわ、ママが好きなことやNFTのことについて話すチャンネルです。
みなさん、こんにちは。
今日は前回に引き続き、ジェネラティブNFTを作った時のお話になります。
今日は作り方の話になるので、ちょっと専門的な用語とか多くなるかなと思うんですけれども、
興味ある人はぜひ聞いてください。
あとは、私自身がプログラミングができるわけではないので、
もし違っているようなことがあったら教えていただけると嬉しいです。
何を見て作ったかというと、
NINJA DAOで有名な村形さんと、
清介さんの記事やYouTubeを見て作りました。
どこにあるのかというと、
NINJA DAOのWeb3エンジニア育成プログラムというチャンネルに、
NINJA DAO Web3エンジニアサーバーという別のディスコードがあるので、
そこに入ってもらって、
チャンネルで誰でもできるジェネラティブNFT開発というのと、
仕事で使えるジェネラティブNFT開発という2つがあるので、
そこのチャンネルに行っていただいて、
誰でもできるジェネラティブNFT開発は、
村形さんのブログがありますので、それを見て作りました。
仕事で使えるジェネラティブNFT開発の方は、
清介さんがYouTubeを撮られていたので、それを見て作りました。
主に村形さんのブログですね。
村形さんはものすごいWeb3エンジニアで、
すごい色々詳しい方なんですけれども、
その方が作ったブログを主に見て、
アローリスト登録については、
清介さんのYouTubeを見ながら作ったという感じになります。
なので、すごくこのチャンネルには感謝しておりまして、
無料で公開されていて、
自分みたいな素人にも作れましたので、
ぜひ興味ある方はそちらを見ていただければなと思います。
スピーカー 1
あとは村形さんのブログについては、
スピーカー 2
今情報がどんどん新しくなっているので、
ブログ通りにやってもできない箇所が何点か出てくるかなと思うので、
そこはその都度お調べてもらったり、
チャンネルで質問コーナーがあるので、
質問したりして見ていただければなと思います。
ちなみに素人の私がやって、
2、3ヶ月ぐらいかかっています。
作ったのに。
それはすごいエラーがたくさん出て、
エラーが出てやり直してとか調べて、
またエラーが出てというのを繰り返しだったので、
ちょっとそのくらいかかったんですけど、
03:00
スピーカー 2
どうだろう、ちょっとやったことある人だったり、
うまくいく人だったら、
1週間ぐらいでできるかなと思います。
壁にはぶつかるんですけど、
私はぶつかったんですけど、
これができるようになれば、
一つの成功体験にもなりますし、
何か違うところでNFTを作りたいなという時には、
自分これ作りましたよというふうにアピールできたりするので、
自身に興味がある方は一緒に頑張っていきたいなと思います。
では作り方についての説明になります。
主に室畑さんのブログに沿って説明するので、
ブログ見ながら聞いていただければなと思います。
室畑さんのブログで何が分かるかというと、
主に4つのことが分かりまして、
1番はジェネラティブ画像の作り方。
2番目としては、
ジェネラティブ画像のデータをブロックチェーン上に反映させて、
値段とかミント数とかそういうものを設定する方法。
これを難しく言うと、
NFTのコントラクトを書いてデプロイする方法と言います。
3番目はベリファイというのをして、
英語で略された言葉を人間が読めるような形にして、
あとイーサースキャン上でミントとかできるようにする方法。
4番目としてミントサイトを作る方法になります。
ジェネラティブ画像を作る元となるものが、
ハッシュリップスのプログラムになります。
これはGitHubというコードが無料で置かれている場所があるので、
ハッシュリップスからダウンロードしていくことになります。
ハッシュリップスのプログラムでジェネラティブを作るプログラムと、
ミントするためのプログラムと、
ミントサイトを作るためのプログラムをダウンロードします。
ここで注意なのが、
ジェネラティブを作るプログラムのバージョンがどんどん新しくなってくるので、
最新のものだともしかしたらジェネラティブ作れないかもしれないので、
むなかたさんのブログに書いてある通りのバージョンにした方がいいなと思います。
私はここで一回つまずいて、最新のものでやってできなかったので、
むなかたさんのブログだとバージョン5でやられているので、
私はバージョン5をダウンロードしました。
まず1番のジェネラティブの画像の作り方ですね。
これについては、
ノードJSというのとVisual Studio Codeというものをインストールします。
これを何するかというと、
JavaScriptを使ってジェネラティブ画像を作りました。
Visual Studio Codeを開いて、
その中でノードJSをインストールして使うんですけれども、
06:01
スピーカー 2
まずはキャラクターですね。
どういうジェネラティブを作るのかということで、
まず最初には絵を描きました。
スピーカー 1
前回お話しした3人のザ・シティ・チルドレンという、
スピーカー 2
シティ・ボーイ&シティ・ガールのファンアートの3人のキャラクターを
私はベースとして、
1人のキャラクターにつき背景3種類、顔3種類、
洋服3種類、帽子3種類のパターンを作って、
それを描ける3のパーツだけの絵をまず描きました。
ジェネラティブNFTというのは、
そういうパーツを組み合わせて1枚の絵にするものになるので、
昨日描いたやつをパーツごとに分けて描いて、
色を塗ったのが一番最初の段階になります。
このパーツに分けた画像をまず用意しまして、
これをVisual Studio Codeで色々プログラミングを打つことによって、
AIが一つの絵にしてくれます。
私は45のデータを作ったので、
その中で45って入れて、ブログ通りにやって、
まず絵を生成しました。
これはすごい感動しますね。
うまくいって、45の別のキャラクター、
別のキャラクターというかジェネラティブの画像ができるので、
すごく感動した覚えがあります。
できた画像データを保存したんですけれども、
私はピニャータというものを使いました。
これは100個まで無料でできるので、
そこまで多くのジェネラティブを作ることはできないんですけど、
まず練習として無料の枠で私はやりました。
できた画像なんですけど、
これはただの画像のデータと、
画像のメタデータという情報が書かれているデータの2つで、
1個の画像になるんですね。
なので、1個の絵に対して画像データ1、
メタデータ1という形になるので、
私は45個作って、
画像データ45個、メタデータ45個で
ファイルを保存しております。
ここまでが1番で、
ジェネラティブ画像の作り方になります。
2番目としてはリミックスといって、
Ethereumのスマートコントラクトを開発する、
総合開発環境を使います。
これでSolidityという言語で、
プログラミングをやっていくことになります。
これを使って、
先ほど、画像データとメタデータがいると言ったんですけど、
メタデータの方を使って、
どういう画像かというのを、
ブロックチェーンに刻んでいきます。
先ほどのメタデータとか、値段とか、
総数とか、1回で何回ミントできるのか、
09:01
スピーカー 2
ということをこちらで決めていきます。
どんなNFTにするのかをこれで決めていきます。
決めたら今度、コンパイルといって、
今、人間が読めるコードを書いているので、
それを機械が読めるコードに変換することを
コンパイルと言うんですけど、コンパイルをします。
その後にデプロイというのをして、
そのコンパイルしたコードを、
私たちが実行できる、
ミントできる、何個ミントするとか、
そういうふうにできる状態にすることを
デプロイと言うんですけど、
スピーカー 1
私たちのユーザーが実行できる状態に変換して、
スピーカー 2
アップロードをするデプロイというものをしていきます。
ここからちゃんと自分が設定した値段通りに
変えるのかとか、ミントできるのかということを
テストしていきます。
いきなりイーサリアムの環境だと、
ちょこちょこガス代がかかってしまうので、
テスト環境でやっていきます。
テスト環境、村形さんのブログは、
多分リンクリを書かれていると思うんですけど、
リンクリが廃止されていて、
5エリっていうテスト環境で私はやりました。
その5エリ用のイーサリアムも、
実際の価値はないテスト環境で使える
イーサリアムがあるので、
そのイーサリアムをもらえるんですね。
サイトからもらって、
そのテスト環境でたくさん練習しました。
スピーカー 1
デプロイしたので、
スピーカー 2
そこでミントできるかとかを確認するんですね。
そこでミントできたら、
オープンシーンに反映されたりするので、
オープンシーンもテスト用のオープンシーンがあるので、
5エリ用のイーサリアムをもらったら、
そこでミントできるかとか、
ちゃんと動くかの確認をして、
ミントできたら、
テスト用のオープンシーンで確認して、
ということをやりましたね。
スピーカー 1
テスト用のオープンシーンで、
画像が反映されて、
スピーカー 2
できたってなったら、
ベリファイということをします。
スピーカー 1
ここからが3番目の内容になります。
ベリファイというのは、
リミックス上でデプロイしたと思うんですけど、
1回ちょっと明日やろうとかで、
スピーカー 2
1回離れてしまうと、
それがもう消えてしまうんですね、
保存したものが。
コントラクトアドレスというものを入れれば、
いいんですけれども、
ベリファイすると、
エリサスキャン上で簡単にできるようになったり、
スピーカー 1
人間が見てもできるような、
プログラミング用語で書かれたものが、
スピーカー 2
保存されているので、
ベリファイすることをお勧めします。
ベリファイして、
エリサスキャン上で、
先ほどリミックスでやったように、
ミントできるようになるんですね。
値段とか、
ミントできるかの確認を、
ベリファイした後にやっていきます。
スピーカー 1
エリサスキャン上で、
スピーカー 2
ミントしたりすること、
食コムって言ったりするんですけど、
12:00
スピーカー 2
それをテストします。
私はこれをテストして、
スピーカー 1
またベリファイでやって、
スピーカー 2
エリサスキャン上で、
オープンシーンに反映できるかを確認しました。
ちなみにこのエリサスキャンも、
スピーカー 1
テスト用のやつがあるので、
スピーカー 2
ごえる用のやつで、
スピーカー 1
全部最初、
私はやっています。
ベリファイも無事にできたということで、
スピーカー 2
今度は4番目のミントサイトを作ります。
直接エリサスキャン上でやってもいいんだけど、
スピーカー 1
それよりもミントサイトを作って、
スピーカー 2
サイト上でボタンを押して、
スピーカー 1
ミントした方が分かりやすいので、
よく見るやつですね。
ミントサイトはこちらです、
スピーカー 2
というミントサイトを作ります。
それも画像とか用意したり、
スピーカー 1
プログラミングちょっといじったりとかして、
ミントサイトを作りました。
ミントサイトを作って、
ミントサイト上からボタンを押して、
ミントできたという、
テスト上のオープンシーンでも
スピーカー 2
反映されたってなったら、
スピーカー 1
もうOKですね。
中田さんのブログはこれで完成という形になります。
その後、もし、
スピーカー 2
アローリスト用に登録したいという場合は、
スピーカー 1
けいすけさんのYouTubeを見ながら、
ちょっと中身を変更していきます。
私の場合は、
アローリストに登録したかったので、
けいすけさんのYouTubeを見ながら、
中身を変えて作りました。
スピーカー 2
こういうテストですね。
スピーカー 1
けいすけさんを見ながらやって、
テスト環境でまたやって、
OKしたら、
出来上がりという形になります。
今までやったのは、
テスト環境、
その5エリ環境でやっているので、
今度は本番環境でやろうということで、
私はイサリアムの環境でやりました。
これはイサリアムでもいいし、
ポリゴンでもいいんですけど、
ちょっと実際のお金がかかってきます。
イサリアムだと結構高いかなという感じですね。
高いというか、
数千円ちょっとかかるかなという感じです。
何をどうすればいいかというと、
先ほどデプロイしたところをリミックスで、
デプロイしたところまで戻ってもらって、
そのデプロイを5エリ環境でやったら、
5エリのテスト環境でできるんですけど、
今度は5エリ環境じゃなくて、
スピーカー 2
実際のイサリアム環境で、
スピーカー 1
メタマスクをいじれる場所があるので、
メタマスクをイサリアムのネットワークの環境に直して、
イサリアムでやったら、
本番環境でできるようになります。
デプロイをイサリアムでやって、
その後は全部同じですね。
リミックスバージョンで、
私はまずミントできるか確認して、
できたってなったら、
今度ベリファイして、
イサリアムのイサスキャン上でミントできるか確認して、
またできた、
そのオープンシーン、
今度は本番用の本番というか、
いつもみんなが使っているオープンシーンに
反映されたってなったら、
今度はミントサイトでできるかっていうのを確認して、
15:02
スピーカー 1
このミントサイトもさっきは5エリ環境のアドレスで作っているので、
今度はイサリアムの環境でもっかい、
ちょっと作り直す場所がちょこちょこあるので、
作り直して、
ミントサイトから本番のオープンシーンに
反映できるかっていうのをやって、
できたってなったらもう完成ですね。
あとはアローリスト登録なので、
実際自分自身のアローリスト登録してできるかっていうのと、
自分がアローリスト登録してない方のアドレスを入れたら
できないかとかっていうのも確認をして、
できたらOKっていう形で、
やっと出来上がりっていう形になります。
今日は長々としゃべってしまったんですけれども、
スピーカー 2
こんな流れで私はGenerative NFTを作りました。
スピーカー 1
1個1個のプログラミングとかでちょっとでもできなかったら
エラーが出てしまうので、
スピーカー 2
私はたくさんつまづいたっていう感じになります。
スピーカー 1
でもそのつまづいても調べたり、
分かんなかったら質問したりとかして、
スピーカー 2
優しく教えてくださったので、
スピーカー 1
そこまでやっと辿り着けることができたという感じになります。
ということで、
今日はGenerative NFTの作り方についてのお話でした。
村畑さんのブログとけいすけさんのYouTubeには
すごいお世話になって、
本当にこれを無料で公開してくださったり、
分かんないところを調べてから質問してねっていう形で
スピーカー 2
できる環境があるのはすごい嬉しいなというふうに思います。
スピーカー 1
本当に見ながらでしたら、
スピーカー 2
やったことない人でもできると思いますので、
スピーカー 1
ぜひ諦めずに作りたいと思っている方は
スピーカー 2
作っていただければと思います。
スピーカー 1
今日はちょっと長くなってしまったんですけれども、
最後まで聞いてくださった皆さま、
どうもありがとうございました。
それでは終わりにしたいと思います。
スピーカー 2
バイバイ。
17:05

コメント

スクロール