以太坊價格 以太坊價格
Ctrl+D 以太坊價格
ads
首頁 > DOGE > Info

NFT:金色硬核|怎么部署一個JPG NFT項目?

Author:

Time:1900/1/1 0:00:00

NFT今年的流行度迅速上升,誕生了許多項目,社區圍繞著它們形成。

作為對項目的忠誠或支持的展示,許多用戶選擇將他們的個人資料圖片更改為一個NFT集合中的JPG。這使得這些用戶很容易被識別為社區成員,并且擁有/展示具有不常見/稀有特征的NFT不僅可以增加該NFT的有形價值,還可以增加社會價值。

事實上,OpenSea——一個受歡迎的NFT交易市場——的用戶群和銷量呈指數級增長,部分原因是基于藝術的PFPNFT的興起。

在本教程結束時,你應該了解如何使用層以編程方式構建任意數量的圖像,列出它們的特征,然后將其放入所有“鏈上”開始建立你的社區。此外,我將介紹在構建NFT項目時要注意的一些詐騙策略和要考慮的一般合約安全。

對于本文,如果你想繼續閱讀,請參閱409H/sample_nft_project代碼庫。

1、構建層

首先,我們需要描述我們想要在我們的項目中使用哪些層/特征,以便我們知道要制作什么樣的圖形。對于這個示例項目,我們將創建一個具有一些基本不同層/特征的簡單項目:

頭型

頭部顏色

眼睛的顏色

眼睛形狀

嘴巴顏色

嘴型

我們將首先構建不同類型的頭部:圓形、方形和三角形選項,帶有顏色變化。

首先,你需要一個圖形創建軟件。對于這個項目,我使用“?8位畫家”,畫布大小為16x16。

Curve Finance:漏洞攻擊者自愿歸還資金的截止日期已過,將向公眾提供賞金:金色財經報道,鏈上數據顯示,Curve向攻擊者地址發送消息稱,自愿歸還Curve漏洞攻擊資金的最后期限已于16:00結束。Curve現在將懸賞范圍擴大至公眾,并懸賞剩余被攻擊資金的10%(目前為185萬美元)給能夠指認攻擊者并導致法庭定罪的人。如果攻擊者選擇全額歸還資金,Curve將不再追究。[2023/8/7 21:28:56]

參考0,0坐標作為面的中間。這樣我們就可以在畫布上創建相對于頭部有間距的其他層。

在上面的圖片,你會發現三個目錄:00head,01eyes和02mouth。頭部將是圖形的基礎層,眼睛和嘴巴將以編程方式覆蓋在頭部層的頂部,因此我們不必手動創建帶有所有不同層的每個圖像。

請記住,這是一個示例項目——沒有做太多的藝術工作來讓它看起來很漂亮,也沒有準備許多不同的特征類型——這只是為了讓你對我們可以完成的工作有一個小小的了解。

需要注意的是每一個層具有一個透明的背景,并且在同一畫布大小,因此圖像可以在彼此的頂部容易且均勻地覆蓋。

一旦所有不同的層和變體都完成了,我們就可以開始編寫代碼來構建最終圖像并記錄每個圖像各自的特征映射。請注意,我們將每個層命名為

<layer>_<trait_shape>_<trait_color>.png

這是有意為之,因為它將有助于以編程方式為每個圖形構建特征映射。如果你使用相同的代碼構建自己的項目,請確保運行“composerruntest”以針對圖像文件名運行測試。

俄央行副行長:CBDC的整合可以真正取代SWIFT:金色財經報道,俄羅斯央行第一副行長Olga Skorobogatova談到了俄羅斯央行數字貨幣(CBDC)的計劃,她表示,盡管俄羅斯的CBDC主要被視為國內支付和轉賬的零售工具,但長期以來一直對跨境應用感興趣,以減少其對以SWIFT和西方清算所為代表的美國主導的金融體系的敞口。最重要的是兩個或多個國家之間達成協議,但如果達成這樣的協議,那么數字貨幣的整合就可以真正取代SWIFT,因為有關數字貨幣的支付和信息將在與現在完全不同的結算基礎設施。

試點將于2023年至2024年間進行,但這只會涉及13家銀行以及有限數量的客戶和交易。由于某些法律有待通過,審判已被推遲,但應該在本月底左右開始。金磚國家的共同貨幣可能是一個突破,可以大大簡化我們經濟體之間的結算。但這并不容易,這是一個漫長的過程。[2023/7/7 22:22:54]

2、合并圖層

現在我們的項目包含輸出最終圖形所需的層,我們需要編寫一些代碼將這些層組合在一起并強制將某種稀有性添加到項目中-例如,一些項目喜歡制作僵尸/骨架變體他們的角色是“罕見的”,這意味著只有一小部分最終圖像會有這些“皮膚”。在我們的例子中,我們不會強制任何類型的稀有度,并且層將被隨機挑選。

為此,我們將編寫一些PHP代碼并使用圖像處理GD庫進行圖像處理。最終代碼可能看起來不太漂亮但它可以按預期工作來構建圖像。

我們總共有4種頭部類型、4種頭部顏色、3種眼睛顏色、2種眼睛類型、2種嘴巴顏色和1種嘴型,并且可以自由編寫代碼來描述它們的稀有性——但首先,讓我們把代碼放在一起合并每一層。

美國參議員:比特幣是政府不能拿走的東西:金色財經報道,美國參議員Cynthia Lummis在接受采訪中談到了比特幣。Cynthia Lummis在討論比特幣的優點時稱,我喜歡它不能被阻止,特別是因為我擔心我們的國家債務以及通貨膨脹。

我看到我家鄉懷俄明州的人們現在去食品銀行,因為他們需要燃料,他們需要汽油才能上班,他們現在必須在高價汽油和食物之間做出選擇。因此,當我們看到通貨膨脹的事情時,當我們看到一美元的價值下降時,當你去雜貨店買一袋食品,而過去同樣的價格買兩袋時,我們真的需要看看那些將長期存在的資產。這就是為什么對我來說,知道比特幣的存在實際上是令人欣慰的。[2022/10/4 18:38:47]

一旦代碼將層合并到我們的規則集,代碼將生成接口所需的JSON對象以顯示每個圖像的特征,這些特征將從在合約級別存儲在baseURI中的端點。

3、創建NFT智能合約

在大多數情況下,NFT合約使用廣泛接受的EIP-721標準,這是一些代碼的一套規則。這些規則概述了函數名稱、函數參數和函數返回類型,然后允許合約的實現/消費順利進行,因為產品只需要按照這些標準編寫代碼,而不必擔心任何項目——渲染圖形的特定調用。

有各種框架和工具可以幫助將合約部署到基于EVM的區塊鏈;我們將使用Remix部署NFT合約并設置合約以允許購買NFT。因為它符合EIP-721,所以它可以在OpenSea等二級市場上開箱即用。

要自定義合約邏輯,我們可以使用OpenZepplinWizard和Remix。要部署該項目的Rinkebytestnet,我們將遵循由AndrewBCoathup提供的教程。

拜登簽署《通脹削減法案》 民主黨獲得期待已久的勝利:金色財經報道,美國總統喬·拜登周二正式簽署《通脹削減法案》,在11月中期選舉之前確定一項重大立法勝利。就在幾周前,該法案通過的機會似乎極為渺茫,但在參議院8月7日投票通過后,眾議院也于8月12日以220-207的投票結果通過了法案。兩院均無任何共和黨人投票支持它。拜登和民主黨人迫切需要這部法律,以及一系列其他立法上的勝利,來幫助提高民調數據,提高在11月中期選舉中保住兩院多數黨地位的希望。根據FiveThirtyEight的民調分析,拜登的支持率僅為40%,而55%的美國人不認同他的工作。[2022/8/17 12:29:36]

因為我們希望允許用戶鑄造一些的NFT,我們可以添加一個功能合約.

我們需要修改向導生成的代碼以設置mint可以調用的次數限制,不應有比我們之前創建的獨特圖形數量更多的鑄造次數。注意:由于基于零的索引,我們需要從數字中減去1。

sol

uint?immutable?maxSupply;

constructor(uint?_maxSupply)?ERC721("Sample?NFT?Project",?"SNP")?{

maxSupply?=?_maxSupply?-?1;

}

部署合約時,我們必須在構造函數參數中輸入可以鑄造的最大供應量。這意味著每個mint()都會有一個圖像和屬性。

新華網發布第二批數字藏品:金色財經報道,新華網發布第二批數字藏品《鄉村振興》系列將于5月23日在新華數藏平臺上線,5月20日啟動預約。據悉,本次數字藏品發行兩款,各限量發售666件,所得收益將捐贈至中國足球發展基金會。[2022/5/20 3:30:46]

NFT的鑄造功能通常由鑄造它的用戶支付,這意味著鑄造者需要向合約發送一些ETH才能接收他們的NFT。為此,我們將在我們的合約中添加一個新功能,以0.01ETH的成本進行鑄造。ETH將留在合約中,直到合約的所有者調用另一個新方法:`withdraw()`。請注意,你可以將其設置為你想要的任何價格,有些項目甚至允許免費鑄幣,鑄造者只需要支付gas!

sol

function?mint()?public?payable?{

require(_tokenIdCounter.current()?<=?maxSupply,?"Sold?out");?//?NFT?project?sold?out

require(msg.value?==?0.01?ether,?"Incorrect?amount");?//?Cost?to?mint?1?NFT?is?0.01?ETH?(10000000000000000?wei)

_safeMint(msg.sender,?_tokenIdCounter.current());

_tokenIdCounter.increment();

}

function?withdraw()?public?onlyOwner?{?//?Owner?can?withdraw?all?the?eth?that?was?paid?to?mint?NFTs

address?payable?recipient?=?payable(address(msg.sender));

recipient.transfer(address(this).balance);

}

一旦我們使用init參數將合約部署到Rinkeby,我們就可以調用mint鑄造NFT。

合約創建:https://rinkeby.etherscan.io/tx/0x46ce4ad1cacae757ee12252b5e214509d829bcc0626aaf325965ae99b5249f74

鑄造NFT:https://rinkeby.etherscan.io/tx/0x4d4102264edfe4aee9a58d1cbc405b0e5b308708c92ffce5413d80459e0e7c1c

申領ETH:https://rinkeby.etherscan.io/tx/0xb6eb339e065c9cb573af2496cef3d2ca67e9b9852c08b2492e9eaed11cbc3bbd

現在我們有鏈上合約并且NFT已經生成,我們可以使用OpenSea的驗證端點來驗證元數據。

然后我們可以在OpenSea上查看NFT及其所有特征!

4、驗證合約

區塊鏈瀏覽器如Etherscan現在將顯示我們的合約,因為它已經部署,但將只顯示字節代碼,直到我們驗證了合約。有時這是一個手動過程,但在部署過程中有可用的自動化工具來執行此操作。當我們的合約從OpenZeppelin存儲庫中導入其他合約時,我們將通過使用一個名為truffle-plugin-verify的強大工具來節省時間。

驗證合約將使其更具可讀性,因為Solidity代碼將發布在區塊瀏覽器上,人們可以更輕松地驗證合約的邏輯。這與社區和開發人員建立了內在的信任,因為每個人對項目背后的代碼都有相同的看法。

我們將需要創建一個新.env文件并為Etherscan和QuickNode添加API密鑰,并提供一個秘鑰恢復短語,以便我們可以在Rinkeby測試網上部署合約并使用兩個驗證合約命令。

shell

truffle?migrate?--network?rinkeby?#?Deploy?contract?to?Rinkeby?with?Truffle

truffle?run?verify?SampleNftContract?--network?rinkeby?#?Verify?contract?source?code?on?Etherscan

5、預部署注意事項

如果你正在關注sample_nft_project存儲庫,則:

圖形相關

將更多圖層圖形添加到images_raw目錄并正確命名文件。

閱讀PHP腳本以確保最終圖形和特征按照您的意愿構建,因為目前沒有強制執行稀有性/唯一性。

安全可靠地托管你的圖像元數據至關重要。如果它托管在你自己的域中,則圖形存在不持久的風險。一些項目提倡使用在IPFS上存儲數據。

智能合約相關

確保將元數據的靜態端點更改為托管元數據的位置。

確保將合約名稱和符號更改為與你的項目相關的內容。

確保你對每個NFT的成本感到滿意,或者如果你不滿意,請更改該值。

部署合約時,請確保將maxSupply設置為images_processed目錄中最大數字的整數。

考慮使用帶有JavascriptVM或注入的web3提供程序的Remix來部署它,指向Rinkeby,這樣你就不會使用真錢來測試它。

5、部署后注意事項

由于我們可以向合約添加/編輯功能,包括更改BaseURI,最好將此值設置為靜態或至少renounceOwnership()稍后調用,如果你想將所有內容指向服務器并更新端點以進行“揭示你的NFT”事件。尤其需要注意的是,如果元數據位于中央服務器上,那么任何有權訪問該服務器的人都可以更改特征和外觀的NFT。

一旦鑄造供應達到其最大值并且你已從合約中提取ETH,請考慮調用renounceOwnership()。由于NFT是靜態供應的,因此你不再需要對合約擁有任何所有權。

這份NFT智能合約未經修改,將要求支付ETH以換取NFT,這可能會引發“gas戰爭”,尤其是在高度期待NFT的情況下。

我們還注意到創建者如何收到為NFT支付的ETH。我們沒有添加在調用mint()時將ETH付款轉發給合約所有者的邏輯,而是添加了另一種方法供所有者調用withdraw(),以便他們可以隨時調用。這意味著用戶鑄造NFT的Gas限制會更低。

買賣NFT可能很有趣,但構建自己的NFT項目可能令人生畏。希望這能讓你對這個過程有所了解!

來源:金色財經

Tags:NFTETHINTRINNFTTEthereum PlatinumExperience PointsRIN價格

DOGE
DAO:SOS啟示錄:一場用戶對公司的「奪權運動」

作者:秦曉峰 北京時間24日下午,一個名為OpenDAO的項目悄然上線,并宣布要為所有在?NFT?交易平臺Opensea交互用戶空投代幣SOS,此前在OpenSea進行過交易的用戶都可領取.

1900/1/1 0:00:00
ROO:網信辦:關于國家區塊鏈創新應用試點入選名單的公示

根據《關于組織申報區塊鏈創新應用試點的通知》,中央網信辦、中央宣傳部、國務院辦公廳、最高人民法院、最高人民檢察院、教育部、工業和信息化部、民政部、司法部、人力資源社會保障部、國家衛生健康委、中國.

1900/1/1 0:00:00
COW:NGC 蔡彥:解讀抗 MEV 型 DEX 領域的創新實驗

撰文:蔡彥,NGCVentures董事總經理去年夏天DeFi進入爆發式增長時,我們見證了許多DEX聚合器,如1inch、?Matcha、?ParaSwap?等.

1900/1/1 0:00:00
GAL:解析GALA Games當下發展和未來

視頻鏈接:《GALAGames:NEXTBESTGamingToken??DeepDive!!》翻譯:深潮TechFlow注:本文是將Youtube上CoinBureau的視頻進行了文字化.

1900/1/1 0:00:00
ANC:六個月 TVL 增長 65 倍,數據解讀 Avalanche 為何躥紅?

來源:Nansen 標題:《Nansen報告:6個月TVL65倍,和LUNA一樣的好機會》 編譯:0x137 「雪崩熱」 作為一個專注于速度和低交易成本的EVM兼容公鏈.

1900/1/1 0:00:00
DAO:關于DAO的生態你了解多少?可以認真看看介紹

DAO(DecentralizedAutonomousCorporations,中文叫去中心化自治組織)指的是圍繞一個共同目的而形成的加密原生團體.

1900/1/1 0:00:00
ads