CryptoAgents: một bộ sưu tập nghệ thuật hợp đồng thông minh Nghệ thuật hợp đồng thông minh như @cryptopunksnfts & @autoglyphs là thánh tích của nghệ thuật crypto CryptoAgents tuân theo cùng một nguyên tắc - với mỗi pixel được lưu trữ hoàn toàn trên @ethereum Hãy cùng khám phá cách CryptoAgents hoạt động 🧵
1/ ĐĂNG KÝ TÀI SẢN HÌNH ẢNH Tất cả tài sản hình ảnh được đăng ký vào hợp đồng thông minh CryptoAgents Solidity trước tiên, cho phép chúng tôi tạo ra 10.000 đại lý. 3 chức năng chính: - addDNA(): Alien, Kong, v.v. - addItem(): Mắt, Đầu, v.v. - setPalettes(): Popsicl, Kindness, v.v.
2/ RENDERING NGHỆ THUẬT ONCHAIN Chức năng này hoạt động như sau: - Lấy dữ liệu vị trí cho từng đặc điểm (DNA, đầu, v.v.) - Ánh xạ từng đặc điểm tới bảng màu của nó - Tạo một bản đồ 24×24 pixel (2304 byte) trong đó mỗi pixel có giá trị RGBA - Kết hợp tất cả các đặc điểm thành một mảng pixel duy nhất
Điều thú vị là cách nó xử lý dữ liệu đặc điểm: - Mỗi đặc điểm có các vị trí tham chiếu đến chỉ số bảng màu - Nó xử lý những điều này theo nhóm 5 byte (x, y, r, g, b) - Nó lắp ráp chúng thành một bộ đệm pixel RGBA 24×24 duy nhất
3/ TẠO SVG Dưới đây là cách chúng tôi triển khai một hàm trả về mỗi CryptoAgent dưới dạng SVG: - Lấy dữ liệu pixel từ hàm vẽ nghệ thuật - Lặp qua từng pixel - Đối với các pixel không trong suốt (alpha > 0), tạo một hình chữ nhật SVG với màu sắc - Kết hợp tất cả các hình chữ nhật thành một SVG hoàn chỉnh - Trả về một URI dữ liệu với nội dung SVG SVG sử dụng các hình chữ nhật kích thước 1×1 cho mỗi pixel, được đặt ở tọa độ x,y chính xác.
4/ TỐI ƯU HÓA LẬP TRÌNH - Chúng tôi sử dụng lập trình assembly để thao tác bộ nhớ nhằm tiết kiệm gas - Chúng tôi cũng sử dụng một định dạng tùy chỉnh để mã hóa giá trị ERG một cách hiệu quả
3,22K