> Why would it be too expensive to store the art on the blockchain instead of a pointer?
Remember that "on the blockchain" means that everybody who keeps a copy of the chain needs to store it. Thus blockchains have a huge motivation to keep that small. A chain which includes lots of data would have many nodes exclude that data from storage - functionally pretty much the same then as storing hashes pointing elsewhere. (or if it forced nodes to keep it somehow, it would have fewer full nodes and/or higher costs to compensate)
> But why is that?
Because those particular implementations are badly done (and the success of Opensea shows that many people (or at least people wielding lots of money) participating don't care about this kind of detail, or at least don't consider it a dealbreaker). Using some kind of API is useful of course to implement, but going through the platform again is not very decentralized...
Remember that "on the blockchain" means that everybody who keeps a copy of the chain needs to store it. Thus blockchains have a huge motivation to keep that small. A chain which includes lots of data would have many nodes exclude that data from storage - functionally pretty much the same then as storing hashes pointing elsewhere. (or if it forced nodes to keep it somehow, it would have fewer full nodes and/or higher costs to compensate)
> But why is that?
Because those particular implementations are badly done (and the success of Opensea shows that many people (or at least people wielding lots of money) participating don't care about this kind of detail, or at least don't consider it a dealbreaker). Using some kind of API is useful of course to implement, but going through the platform again is not very decentralized...