Quick summary of wearables 2.0:
Upgraded file formats
Upgraded to decentralized storage
Upgraded thumbnails
Upgraded previews
Upgraded metadata
New thumbnails
50% bigger resolution, 5x smaller filesize, transparent background, still GIF format.
New previews
Different skyboxes to represent the years a wearables collection was minted. Each skybox is a 360 equirectangular picture from a VRChat world that Voxels content was ported into and reflects the era:
2019-2020: Black and white era
2021: Color emerges, calm before the storm
2022: NFT and metaverse hype cycle peaks
2023: Desert to represent the winter that followed
2024: Half voxels half sea to represent WIP year + islands
View a demo: https://arweave.net/DQzDSe2GFKopqmFOuwdefIWA53dtt6wy-6k609QiMg4
AR + VR Support via glTF and USDZ
Every wearable can now be previewed in AR and VR. Tested across android and IOS devices including the Apple Vision Pro.
New metadata
The NFT metadata for every wearable across every collection in the snapshot has been updated. On the right is a preview of the new metadata with arweave links and new metadata fields such as glb, collection, year, and animation_url for the HTML preview.
Mission complete!
Date taken: March 12, 2024
https://docs.google.com/spreadsheets/d/19Fab72iK5Ks9KeI_ArY79m0wxyL10s45obZr1FGnKKo/edit?usp=sharing :star:
The Cryptovoxels community has designed over 34,000 unique wearables to 111,557 collectors holding a total of 350,263 NFTs!
For sake of comparison, Decentraland has about 6840 unique wearables designs (Dune sources say ~10k) made by ~1587 creators and have about 4531 collectors.
Number of Cryptovoxels wearables minted per year:
2020: 3138
2021: 21792
2022: 8621
2023: 438
2024: 26 (as of snapshot date)
Each voxels parcel owned is 1 point = 7,937 Wearbles creator impact (see below) = 11,867 Total = 19804
I asked chatgpt to help me come up with an algorithm for distributing voting power amongst wearables creators:
To create a fair distribution of points based on the impact of minted NFTs, considering factors such as the number of NFTs minted, the number of unique tokens, and the number of owners, you can use a weighted scoring system. Here's a suggested algorithm:
Normalize the data: Normalize each of the three metrics (Number of NFTs, Unique Tokens, Number of Owners) to a common scale between 0 and 1. You can use min-max normalization for this purpose.
Assign weights: Assign weights to each normalized metric based on their importance in determining impact. These weights can be subjective and depend on your specific use case. For example, you may decide that the number of NFTs minted is more important than the number of owners.
Calculate scores: Calculate a composite score for each address by multiplying each normalized metric by its corresponding weight and summing them up.
Distribute points: Allocate points to each address based on their composite score. You can distribute points proportionally or use a different method based on your preference.
We then round the points and add +1 for sake of being a wearables creator. For transparency sake, this is the python code that was used to calculate the results:
import pandas as pd
from sklearn.preprocessing import MinMaxScaler
# Read data from CSV file
df = pd.read_csv('creators.csv')
# Normalize the data
scaler = MinMaxScaler()
df[['Number of NFTs', 'Unique Tokens', 'Number of Owners']] = scaler.fit_transform(df[['Number of NFTs', 'Unique Tokens', 'Number of Owners']])
# Define weights
weights = {
'Number of NFTs': 0.3,
'Unique Tokens': 0.2,
'Number of Owners': 0.5
}
# Calculate composite score
df['Composite Score'] = (df['Number of NFTs'] * weights['Number of NFTs']) + (df['Unique Tokens'] * weights['Unique Tokens']) + (df['Number of Owners'] * weights['Number of Owners'])
# Distribute points based on composite score
total_points = 10000 # Total points to distribute
df['Points'] = (df['Composite Score'] / df['Composite Score'].sum()) * total_points
# Round the points and convert to integers
df['Points'] = df['Points'].round().astype(int)
# Add 1 point to each address
df['Points'] += 1
# Export results to CSV
df[['Minted Address', 'Points']].to_csv('results.csv', index=False)
print("Results exported to 'results.csv'.")
Snapshot strategies
In addition to a standard strategy for who owns a Voxels parcel, we implemented the whitelist weighted strategy that incorporated the points calculated in the steps above for wearables creators to have a strong voice in voting.
whitelist weighted
{
"symbol": "ABC",
"addresses": {
"0xa478c2975ab1ea89e8196811f51a7b7ade33eb11": 5,
"0xeF8305E140ac520225DAf050e2f71d5fBcC543e7": 2
}
}
What is the next step? Here's a couple ideas I got:
The creator of a collection overwrites the existing NFT metadata with the new metadata, thereby upgrading the NFTs everyone already has to the new decentralized versions.
Benefits:
no remint, just update existing contracts
1 time transaction vs airdropping
maintain provenance, collectors already have it
unsold copies can find new market value as durable and interoperable wearables
Downsides:
Will it break things in voxels.com? Need to test
can still have vox
as trait_type
could create a baseURI like https://www.cryptovoxels.com/c/7/{id}
with Arweave for linking to the metadata
Would still be hard to update all collections
Could look messy if mix of old + new wearables
Similar to a fork. It would not be an upgrade to the Voxels wearables, but rather a new collection to immortalize a SNAPSHOT of all the wearables. This option is like having an on-chain mirror.
Benefits:
Full upgrade: All wearables 2.0 would look really nice together
Immortalize the whole snapshot of wearables as a NFT collection
Can airdrop or allow list previous owners to mint or burn redeem?
Unsold copies can find new market value as durable and interoperable wearables
Downsides:
It might be confusing when searching for a wearable to see 2 similar results
100k+ collectors, many might not know + still expensive to airdrop
It turns 800 creator owned collections into 1 collection
We mint all costumes as VRM avatar NFTs and create a pool of shared assets to generate into new avatars. The mannequin base mesh can be an OG trait, but we don't have to be limited to it.
Benefits
By minting avatars, not wearables, we can reduce some confusion
Can broaden the appeal of Voxels to new people
We can make the collection look absolutely stunning
Feels fun and innovative, like metaverse passports + immigration cards
This option can potentially pair with another option
Can use splits contract to drive sales to a DAO
Downsides:
There's a lot of wearables, not all of them might make it in
What would be a fair split?
Might be hard to get permission to use wearables from a bunch of creators?
For sake of posterity, since a whole post could be dedicated to this topic, here is a preview of Voxels costumes to VRM export. VRM avatars from costumes have been made and hand tailored for finishing touches for all Openvoxels supporters. We also exported VRM avatars for all parcel holders. What we do next is TBD :)
Donate to our juicebox, get $OPENVOX tokens, which can be used for minting exclusive swag. I think we will also give Openvoxels supporters voting power in our snapshot in the future. After shipping wearables and VRM avatar exports, there’s a few exciting paths we can take on what to focus on next that could use your input!
Last note: I think we will be doing an art contest for wearables soon, stay tunes and follow Openvoxels on X for more info!