When we think of NFTs, we usually think of profile picture collections, but that’s not the case. Any digital art can be converted to NFT. NFTs are currently all about static art files. A static file is kept in a decentralized storage system such as IPFS, and its hash is recorded within a smart contract. A hash is minted NFT information that comprises several attributes for the art file.
We only have a #digital file right now. We can see, hear, and #trade with it, but we cannot interact with it, and they cannot interact with one another.
This is where #NFTs’ powers are constrained. They are not dynamic but relatively stagnant. They are unable to engage with humans or other NFTs.
Interactive NFTs are a fantastic source of inspiration because they began as a hackathon project. Although it lacks #NFT -> NFT interaction, it’s a decent starting point for expanding NFT’s #features.
What exactly is NFT 2.0?
When it comes to defining #NFT 2.0, everyone has their own definition.
It’s an improvement above NFT 1.0, based on the #ERC-721 specification.
Let’s dive deeply into some technical details we may need to implement or update.
Because computing on the #blockchain is expensive, we can conceive of it as a client-server design, where the client is the user’s device. Our #interface and processing layer is the client, and the outcome of that computation is saved on the blockchain, our server.
Where will we keep the computation logic?
To make an NFT interactive, it must accept input from a user or another NFT, compute it, and display the results in the NFT or save them in a smart contract.
Smart Contract with IPFS Interface
NFT “A” is interacted with by a user.
On the client side, input is calculated.
The outcome of that computation is saved within a smart contract.
One method for storing a result within a smart contract variable is to invoke a function that accepts the result as an argument.
When a function is called within a smart contract, it will:
a. save the result in smart contract variable “A.”
b. call another smart contract’s function with an argument generated using client or smart contract “A.”
c. The preceding operation modifies the state of smart contract “B,” affecting and changing the values of NFT B.
In this case, each smart contract functions as a microservice within the Blockchain cluster.
One thing to keep in mind is that this NFT->NFT communication is only possible with human interaction or through another smart contract that is not an NFT contract.
When it comes to NFT 2.0, the options are limitless.