教你如何在 Solana 上使用 Token Extensions 創建Dynamic Metadata NFTs

更新於 發佈於 閱讀時間約 4 分鐘

Introduction

Dynamic Metadata NFTs 是區塊鏈技術中的一大創新,特別是在遊戲領域,能提供更大的靈活性和on-chain data manipulation。

Solana 區塊鏈的 Token Extensions program讓開發者能創建dynamic, customizable metadata且能在鏈上儲存的 NFT。

本文將引導你使用 Solana 的 Anchor 框架來建立這樣的 NFT。

Dynamic Metadata

傳統 NFT 的 Metadata通常儲存在鏈下,這限制了它們的靈活性。而Dynamic Metadata NFT 則允許即時更新和鏈上互動,特別適合用於遊戲中,因為這樣玩家的等級、資源等都能直接編寫進 NFT 中,提供更流暢的遊戲體驗。

設置On-Chain Program

要建立具有dynamic metadata的 NFT,首先需要使用 Solana 的 Anchor 框架來設定一個on-chain program。這個program會鑄造 NFT,並允許實時更新其metadata。

之後會使用官方提供的、專注於遊戲應用的範例,該範例中的 NFT 會追蹤玩家的等級和資源。

步驟:

  1. 創建 Mint Account:首先創建並初始化一個用來儲存 NFT 的 Mint Account
  2. 創建Metadata Pointer:Metadata Pointer是用來連接dynamic metadata與 NFT 的。
  3. 鑄造 NFT:當infrastructure準備就緒後,鑄造 NFT 並將其存入關聯的代幣帳戶。鑄造後,凍結 mint 權限以防止對 NFT 進行進一步更改。

撰寫 Rust Program

Rust 是on-chain operations的核心,主要包括計算account所需的空間、初始化account、並創建metadata fields。

初始化帶有metadata extensions功能的 mint account

let space = ExtensionType::try_calculate_account_len::<Mint>(
&[ExtensionType::MetadataPointer])
.unwrap();

let lamports_required = (Rent::get()?).minimum_balance(space + meta_data_space);
system_program::create_account(
CpiContext::new(
ctx.accounts.token_program.to_account_info(),
system_program::CreateAccount {
from: ctx.accounts.signer.to_account_info(),
to: ctx.accounts.mint.to_account_info(),
},
),
lamports_required,
space as u64,
&ctx.accounts.token_program.key(),
)?;

JavaScript 客戶端整合

JavaScript 客戶端用來與on-chain program進行互動,從前端實現 NFT 的鑄造和更新。

以下代碼將展示如何設置客戶端、將其連接到on-chain program,以及鑄造 NFT並指定所需的帳戶和權限。

raw-image


Running Locally and Deployment

要在本地運行並部署程式,首先需要設置 Solana 的開發環境,然後build並部署 Anchor 程式。

可以使用 anchor buildanchor deploy 等命令來管理部署過程。

步驟:

  1. build 與部署:build 並部署 Anchor 程式。
  2. 客戶端設置:安裝相關dependencies 並運行開發伺服器。
  3. 測試:使用 Solana Explorer 監控交易並與本地測試節點進行互動。

結論

通過利用 Solana 的 Token Extensions 和 Anchor 框架,開發者能夠創建靈活、互動性強的數字資產,進一步提升區塊鏈生態系統中的用戶體驗。

參考資料

https://solana.com/developers/guides/token-extensions/dynamic-meta-data-nft

留言
avatar-img
留言分享你的想法!
avatar-img
jackchai
0會員
6內容數
SuDo Research Labs
jackchai的其他內容
2024/08/14
因為要宣傳Solana 創研松,因此在XueDAO的群組裡面開啟了<每天一些Solana學習資源直到創研松結束>的系列貼文,但總覺得只有XueDAO成員看到很可惜,加上其實找到的都是一些不錯的資源,分享在這上面也可讓大家一起學習,所以寫這篇文!
Thumbnail
2024/08/14
因為要宣傳Solana 創研松,因此在XueDAO的群組裡面開啟了<每天一些Solana學習資源直到創研松結束>的系列貼文,但總覺得只有XueDAO成員看到很可惜,加上其實找到的都是一些不錯的資源,分享在這上面也可讓大家一起學習,所以寫這篇文!
Thumbnail
2024/08/14
上一篇有提到,在Solana RetroPGF 第 1 輪中,總共吸引了超過100個計畫申請人,其中約36個計畫獲得了資助。
Thumbnail
2024/08/14
上一篇有提到,在Solana RetroPGF 第 1 輪中,總共吸引了超過100個計畫申請人,其中約36個計畫獲得了資助。
Thumbnail
2024/08/14
回溯性公共財募資(Retroactive Public Goods Funding,RPFG)是一種事後可追溯的公共財募資,也是一種新興且具有創新性的資助模式,因為他以成果為導向,專門用來激勵和支持區塊鏈生態系統中的公共財項目。
Thumbnail
2024/08/14
回溯性公共財募資(Retroactive Public Goods Funding,RPFG)是一種事後可追溯的公共財募資,也是一種新興且具有創新性的資助模式,因為他以成果為導向,專門用來激勵和支持區塊鏈生態系統中的公共財項目。
Thumbnail
看更多
你可能也想看
Thumbnail
大家好,我是一名眼科醫師,也是一位孩子的媽 身為眼科醫師的我,我知道視力發展對孩子來說有多關鍵。 每到開學季時,診間便充斥著許多憂心忡忡的家屬。近年來看診中,兒童提早近視、眼睛疲勞的案例明顯增加,除了3C使用過度,最常被忽略的,就是照明品質。 然而作為一位媽媽,孩子能在安全、舒適的環境
Thumbnail
大家好,我是一名眼科醫師,也是一位孩子的媽 身為眼科醫師的我,我知道視力發展對孩子來說有多關鍵。 每到開學季時,診間便充斥著許多憂心忡忡的家屬。近年來看診中,兒童提早近視、眼睛疲勞的案例明顯增加,除了3C使用過度,最常被忽略的,就是照明品質。 然而作為一位媽媽,孩子能在安全、舒適的環境
Thumbnail
我的「媽」呀! 母親節即將到來,vocus 邀請你寫下屬於你的「媽」故事——不管是紀錄爆笑的日常,或是一直想對她表達的感謝,又或者,是你這輩子最想聽她說出的一句話。 也歡迎你曬出合照,分享照片背後的點點滴滴 ♥️ 透過創作,將這份情感表達出來吧!🥹
Thumbnail
我的「媽」呀! 母親節即將到來,vocus 邀請你寫下屬於你的「媽」故事——不管是紀錄爆笑的日常,或是一直想對她表達的感謝,又或者,是你這輩子最想聽她說出的一句話。 也歡迎你曬出合照,分享照片背後的點點滴滴 ♥️ 透過創作,將這份情感表達出來吧!🥹
Thumbnail
Dynamic Metadata NFTs 是區塊鏈技術中的一大創新,特別是在遊戲領域,能提供更大的靈活性
Thumbnail
Dynamic Metadata NFTs 是區塊鏈技術中的一大創新,特別是在遊戲領域,能提供更大的靈活性
Thumbnail
前言 本篇要用 Token-2022 和 solana cli 來鑄造一個新的代幣叫做TYC。 如前篇所述,Token-2022 與 Spl Token 是不同的 Program,所以在呼叫的時候要特別註明以示明區別。 Token-2022 Program ID 地址: TokenzQdBNb
Thumbnail
前言 本篇要用 Token-2022 和 solana cli 來鑄造一個新的代幣叫做TYC。 如前篇所述,Token-2022 與 Spl Token 是不同的 Program,所以在呼叫的時候要特別註明以示明區別。 Token-2022 Program ID 地址: TokenzQdBNb
Thumbnail
Blink,是 Solana 所開發的一種鏈上操作轉化為前端頁面的創新技術。這個功能可以將交易、投票等操作轉換成可分享的連結或二維碼,讓用戶可以直接在社交媒體上完成鏈上操作。
Thumbnail
Blink,是 Solana 所開發的一種鏈上操作轉化為前端頁面的創新技術。這個功能可以將交易、投票等操作轉換成可分享的連結或二維碼,讓用戶可以直接在社交媒體上完成鏈上操作。
Thumbnail
这篇文章主要为大家介绍了这篇文章主要介绍了Solana沦为Meme链了吗 托起TVL的还有链上应用的相关资料,需要的朋友可以参考下本文详细内容 🚀 币安 - 全球最大加密货币交易所 💥 独家优惠 💥 💰 注册即享 20% 手续费返佣 🔑 专属邀请码: R851UX3N 售价599美
Thumbnail
这篇文章主要为大家介绍了这篇文章主要介绍了Solana沦为Meme链了吗 托起TVL的还有链上应用的相关资料,需要的朋友可以参考下本文详细内容 🚀 币安 - 全球最大加密货币交易所 💥 独家优惠 💥 💰 注册即享 20% 手续费返佣 🔑 专属邀请码: R851UX3N 售价599美
Thumbnail
SOL生态是Solana区块链上的应用和生态系统,其代币SOL币从2023年初到年末已经涨了6倍,涨幅远远高于BTC的同期涨幅,对于投资者来说,最为关心的是SOL生态怎么样?优缺点有哪些?SOL生态有哪些币种?本文将为大家详细介绍 🚀 币安 - 全球最大加密货币交易所 💥 独家优惠 💥 �
Thumbnail
SOL生态是Solana区块链上的应用和生态系统,其代币SOL币从2023年初到年末已经涨了6倍,涨幅远远高于BTC的同期涨幅,对于投资者来说,最为关心的是SOL生态怎么样?优缺点有哪些?SOL生态有哪些币种?本文将为大家详细介绍 🚀 币安 - 全球最大加密货币交易所 💥 独家优惠 💥 �
Thumbnail
This is 就這樣栽進Web 3.0 &Economic 的路易斯啦!!!! 秉持著Simple Is Good,「Solana 創研松」徵文策展,我參上! 開始正題之前,先介紹 Solana的基本概念,Let's Go!!! Solana 是一個區塊鏈平台,旨在提供高速度和低成本的交易
Thumbnail
This is 就這樣栽進Web 3.0 &Economic 的路易斯啦!!!! 秉持著Simple Is Good,「Solana 創研松」徵文策展,我參上! 開始正題之前,先介紹 Solana的基本概念,Let's Go!!! Solana 是一個區塊鏈平台,旨在提供高速度和低成本的交易
Thumbnail
Solana Pay是基於Solana區塊鏈開發的支付協議,允許使用加密貨幣進行支付。文章介紹了Solana Pay的優勢和功能,下一篇文章將簡單介紹其API的機制與實作。
Thumbnail
Solana Pay是基於Solana區塊鏈開發的支付協議,允許使用加密貨幣進行支付。文章介紹了Solana Pay的優勢和功能,下一篇文章將簡單介紹其API的機制與實作。
Thumbnail
隨著 Web3 技術的發展,我們需要充滿創新思維的你,對於區塊鏈的議題進行知識的交流與分享! 本次 vocus 與 Gen3 合作,針對 Solana 區塊鏈的相關話題進行徵文,一起來看看怎麼參加吧!
Thumbnail
隨著 Web3 技術的發展,我們需要充滿創新思維的你,對於區塊鏈的議題進行知識的交流與分享! 本次 vocus 與 Gen3 合作,針對 Solana 區塊鏈的相關話題進行徵文,一起來看看怎麼參加吧!
Thumbnail
利用區塊鏈技術新認證方式(數位資料)Non–Fungible Token/縮寫NFT,因其獨一無二的價值,因而受到等同藝術品般瘋搶的NFT,也在時尚圈形成一股趨勢。
Thumbnail
利用區塊鏈技術新認證方式(數位資料)Non–Fungible Token/縮寫NFT,因其獨一無二的價值,因而受到等同藝術品般瘋搶的NFT,也在時尚圈形成一股趨勢。
Thumbnail
Solana 生態空投的價值和方法。Solana 生態已經成長為熱門區塊鏈生態系統之一。本文介紹了為什麼要參與 Solana 生態的空投以及如何準備參與的方式。
Thumbnail
Solana 生態空投的價值和方法。Solana 生態已經成長為熱門區塊鏈生態系統之一。本文介紹了為什麼要參與 Solana 生態的空投以及如何準備參與的方式。
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News