NFT今年的流行度迅速上升,誕生了許多項目,社區圍繞著它們形成。
作為對項目的忠誠或支持的展示,許多用戶選擇將他們的個人資料圖片更改為一個NFT集合中的JPG。這使得這些用戶很容易被識別為社區成員,并且擁有/展示具有不常見/稀有特征的NFT不僅可以增加該NFT的有形價值,還可以增加社會價值。
事實上,OpenSea——一個受歡迎的NFT交易市場——的用戶群和銷量呈指數級增長,部分原因是基于藝術的PFPNFT的興起。
在本教程結束時,你應該了解如何使用層以編程方式構建任意數量的圖像,列出它們的特征,然后將其放入所有“鏈上”開始建立你的社區。此外,我將介紹在構建NFT項目時要注意的一些詐騙策略和要考慮的一般合約安全。
對于本文,如果你想繼續閱讀,請參閱409H/sample_nft_project代碼庫。
1、構建層
首先,我們需要描述我們想要在我們的項目中使用哪些層/特征,以便我們知道要制作什么樣的圖形。對于這個示例項目,我們將創建一個具有一些基本不同層/特征的簡單項目:
頭型
頭部顏色
眼睛的顏色
眼睛形狀
嘴巴顏色
嘴型
我們將首先構建不同類型的頭部:圓形、方形和三角形選項,帶有顏色變化。
首先,你需要一個圖形創建軟件。對于這個項目,我使用“?8位畫家”,畫布大小為16x16。
參考0,0坐標作為面的中間。這樣我們就可以在畫布上創建相對于頭部有間距的其他層。
金色午報 | 1月28日午間重要動態一覽:7:00-12:00關鍵詞:數字貨幣、微博熱搜、bitFlyer
1.中信建投:數字貨幣應用進程有望加速;
2.韓國國會議員提議創建將加密貨幣市場操縱定為犯罪的法案;
3.日本加密交易所bitFlyer去年12月托管資產超27億美元;
4.“美國多所大學捐贈基金持續買入比特幣”登上微博熱搜榜;
5.澳大利亞網絡安全專員:基于區塊鏈的ID解決方案可以幫助解決網絡濫用和網絡釣魚問題;
6.當前以太坊上DeFi協議總鎖倉量為341.5億美元;
7.波卡跨鏈預言機ParaLinkNetwork完成280萬美元融資。[2021/1/28 14:12:32]
在上面的圖片,你會發現三個目錄:00head,01eyes和02mouth。頭部將是圖形的基礎層,眼睛和嘴巴將以編程方式覆蓋在頭部層的頂部,因此我們不必手動創建帶有所有不同層的每個圖像。
請記住,這是一個示例項目——沒有做太多的藝術工作來讓它看起來很漂亮,也沒有準備許多不同的特征類型——這只是為了讓你對我們可以完成的工作有一個小小的了解。
需要注意的是每一個層具有一個透明的背景,并且在同一畫布大小,因此圖像可以在彼此的頂部容易且均勻地覆蓋。
一旦所有不同的層和變體都完成了,我們就可以開始編寫代碼來構建最終圖像并記錄每個圖像各自的特征映射。請注意,我們將每個層命名為
金色午報 | 4月17日午間重要動態一覽:7:00-12:00關鍵詞:騰訊、釣魚賬號、深圳、Libra
1. 騰訊安全領御區塊鏈-北京方正公證取證平臺正式發布;
2. 部分Voice釣魚賬號已非法獲利9,044個EOS;
3. 首例涉農區塊鏈項目 股權在德陽成功轉讓;
4. 深圳前海發布國內首個區塊鏈法律糾紛分析報告;
5. 江西南昌將推進一批包括區塊鏈等領域在內的數字產業項目;
6. 加密交易員:加密貨幣在這段時間內的表現與傳統市場的不同;
7. Libra項目負責人:將調整重心到穩定幣錢包;
8. 分析:比特幣隱私受限、集中式開采和缺乏可伸縮性等問題可轉化為優勢。[2020/4/17]
<layer>_<trait_shape>_<trait_color>.png
這是有意為之,因為它將有助于以編程方式為每個圖形構建特征映射。如果你使用相同的代碼構建自己的項目,請確保運行“composerruntest”以針對圖像文件名運行測試。
2、合并圖層
現在我們的項目包含輸出最終圖形所需的層,我們需要編寫一些代碼將這些層組合在一起并強制將某種稀有性添加到項目中-例如,一些項目喜歡制作僵尸/骨架變體他們的角色是“罕見的”,這意味著只有一小部分最終圖像會有這些“皮膚”。在我們的例子中,我們不會強制任何類型的稀有度,并且層將被隨機挑選。
為此,我們將編寫一些PHP代碼并使用圖像處理GD庫進行圖像處理。最終代碼可能看起來不太漂亮但它可以按預期工作來構建圖像。
我們總共有4種頭部類型、4種頭部顏色、3種眼睛顏色、2種眼睛類型、2種嘴巴顏色和1種嘴型,并且可以自由編寫代碼來描述它們的稀有性——但首先,讓我們把代碼放在一起合并每一層。
金色晨訊 | 1月14日隔夜重要動態一覽:21:00-7:00關鍵詞:委內瑞拉、芝商所、比特幣期權、Telegram、GBTC
1. 委內瑞拉央行停止通過BioPago銷售石油幣。
2. 芝商所比特幣期權開放交易,首日交易量達210萬美元。
3. 有關歐洲央行戰略評估內容的觀點激增,主題包括數字貨幣。
4. 湖南省發力“制造強省”,力爭在區塊鏈等領域培育形成一批新增長點。
5. 中行前行長李禮輝:應抓緊制定數字貨幣監管等數字金融制度。
6. 銀行申請區塊鏈專利數量4年增38倍,微眾銀行以288件專利奪冠。
7. Telegram將在2月26日前向法院提供ICO相關的銀行記錄。
8. 灰度比特幣信托基金(GBTC)再次啟動私募。
9. BTC現報8106.74美元,近24小時下跌0.32%,市值為1469.31億美元。[2020/1/14]
一旦代碼將層合并到我們的規則集,代碼將生成接口所需的JSON對象以顯示每個圖像的特征,這些特征將從在合約級別存儲在baseURI中的端點。
3、創建NFT智能合約
在大多數情況下,NFT合約使用廣泛接受的EIP-721標準,這是一些代碼的一套規則。這些規則概述了函數名稱、函數參數和函數返回類型,然后允許合約的實現/消費順利進行,因為產品只需要按照這些標準編寫代碼,而不必擔心任何項目——渲染圖形的特定調用。
有各種框架和工具可以幫助將合約部署到基于EVM的區塊鏈;我們將使用Remix部署NFT合約并設置合約以允許購買NFT。因為它符合EIP-721,所以它可以在OpenSea等二級市場上開箱即用。
分析 | 金色盤面:GTO表現活躍:金色盤面綜合分析:過去幾日資金持續流入,短線走勢強勁,從日線圖看,這里有一個比較明顯的日線級別的底背離反彈機會,目前價格再中軌附近,如果持續反彈,有望挑戰上軌壓力,但是要關注短分時的軌道變化情況。價格波動是市場行為,提醒投資者注意做好風控。[2018/9/18]
要自定義合約邏輯,我們可以使用OpenZepplinWizard和Remix。要部署該項目的Rinkebytestnet,我們將遵循由AndrewBCoathup提供的教程。
因為我們希望允許用戶鑄造一些的NFT,我們可以添加一個功能合約.
我們需要修改向導生成的代碼以設置mint可以調用的次數限制,不應有比我們之前創建的獨特圖形數量更多的鑄造次數。注意:由于基于零的索引,我們需要從數字中減去1。
sol
uint?immutable?maxSupply;
constructor(uint?_maxSupply)?ERC721("Sample?NFT?Project",?"SNP")?{
maxSupply?=?_maxSupply?-?1;
}
部署合約時,我們必須在構造函數參數中輸入可以鑄造的最大供應量。這意味著每個mint()都會有一個圖像和屬性。
金色財經獨家分析:加密數字社區改算法是“對事兒不對人”嗎?:上周末門羅幣發布包含新哈希算法Cryptonight PoW的Lithium Luna版本,讓螞蟻礦機X3失效,背書了一個月前比特幣Cobra怒懟吳忌寒、討論采用PoW+PoS算法的計劃。
兩則消息反映了加密數字社區對算力集中的擔憂和維護比特幣和門羅幣算力民主否d的態度。吳忌寒曾澄清“不擁有對這些哈希算力的控制權”并提出了修改算法導致幣價波動的擔憂,而兩社區 “原教旨主義”依然高漲,情緒影響下的技術探討著實有些“對事又對人”。修改算法動作不小,但是從共識機制來講,目前看還是離不開PoW,也因此很難避免新的“算力集中”,即使不是吳忌寒,難免另一個所謂的算力帝國,如此看,兩場爭端更像是“對人不對事兒”,有些“游戲”的意味。
今有業內人士稱,“幾個POW虛擬幣社區陸續修改挖礦算法,將造成過去礦機迭代商業模式失效,不會再有CPU, GPU, FPGA, ASIC路線。新的PoW項目,將只有GPU通用礦機。”看上去算力將再次走向民主。值得思考的是,形勢上的民主并不足以證明實際操控權的平等,畢竟無論礦機怎么變,其背后的資本都可以相當集中。[2018/3/27]
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:NFTETHINKRINAPENFT幣最新銷毀ETHS價格StarLinkuGAS-JUN21 Token Expiring 30 Jun 2021
時間來到12月末,經歷了幾乎一整年頭像類NFT的熱潮,人們對這些視覺類的頭像項目難免會有審美疲勞,近日發售的新頭像類項目普遍在二級市場遇冷.
1900/1/1 0:00:002021-12-18T08:46:56.000+0000從社區自治實驗ConstitutionDAO的逆勢爆紅,到各類DAO項目斬獲巨額投資.
1900/1/1 0:00:00在今年的365天時間里,加密市場迎來過機遇,面臨過挑戰,卻從未停下過前進的腳步。如今2021年即將進入尾聲,就讓我們一起盤點下2021屬于加密市場的那些關鍵詞與熱詞吧.
1900/1/1 0:00:00許多web3懷疑者在使用web3相關產品之后很快就批評說用戶體驗很糟糕,即使是web3的擁護者也經常承認用戶體驗可能沒有那么好,但去中心化帶來的良好特性能彌補這個缺陷.
1900/1/1 0:00:00今天,加密貨幣市場90%的談話都圍繞著元宇宙展開,元宇宙將由Web3.0技術提供支持,包括加密貨幣、區塊鏈和NFT.
1900/1/1 0:00:00隨著12月走入中下旬,數字資產市場的2021年也來到了收官階段,在即將過去的2021年,我們不僅見證了數字資產市場波瀾壯闊的牛市進程,也經歷了短時驟跌的慘淡行情,不過就在這波折起伏的過程中.
1900/1/1 0:00:00