Learn how to create, compress, and mint 3D NFTs on Solana
Can't find what you're looking for? Contact our support team.
The cNFT-3D Platform enables creators to transform 3D models into compressed NFTs on the Solana blockchain, offering superior performance and lower costs compared to traditional NFTs.
Solana's compressed NFTs use state compression to reduce on-chain storage costs by up to 98%, making them ideal for 3D assets.
Our platform uses advanced algorithms to compress 3D models while preserving visual quality, generating multiple LOD (Level of Detail) variants.
3D assets are stored permanently on Arweave, ensuring your NFTs remain accessible and immutable for the long term.
Upload your 3D model and our system compresses it
Your 3D assets are stored permanently on Arweave
Your 3D model is minted as a compressed NFT on Solana
The platform handles the entire process from upload to minting, making it easy to create high-performance 3D NFTs without technical expertise.
Detailed technical information about the platform's components and APIs.
Our platform automatically generates multiple Level of Detail (LOD) variants of your 3D model:
The appropriate LOD is loaded based on device capabilities and viewing distance.
We use a combination of techniques powered by TensorFlow Graphics:
Solana's state compression uses Merkle trees to store NFT data off-chain while maintaining on-chain verification:
Our platform uses the following Solana programs:
// Solana programs used for compressed NFTs
const SPL_ACCOUNT_COMPRESSION_PROGRAM_ID = new PublicKey(
"cmtDvXumGCrqC1Age74AVPhSRVXJMd8PJS91L8KbNCK"
);
const SPL_NOOP_PROGRAM_ID = new PublicKey(
"noopb9bkMVfRPU8AsbpTUg8AQkHtKwMYZiFUjNRtMmV"
);Compressed NFT metadata includes:
{
"name": "3D Model Name",
"description": "Detailed description of the 3D model",
"image": "https://arweave.net/[thumbnail-id]",
"animation_url": "https://arweave.net/[model-id]",
"attributes": [
{
"trait_type": "Category",
"value": "Sculpture"
},
{
"trait_type": "Style",
"value": "Abstract"
}
],
"properties": {
"files": [
{
"uri": "https://arweave.net/[high-lod-id]",
"type": "model/gltf-binary",
"cdn": true,
"quality": "high"
},
{
"uri": "https://arweave.net/[medium-lod-id]",
"type": "model/gltf-binary",
"cdn": true,
"quality": "medium"
},
{
"uri": "https://arweave.net/[low-lod-id]",
"type": "model/gltf-binary",
"cdn": true,
"quality": "low"
}
]
}
}// Upload a 3D model file
POST /api/upload
Content-Type: multipart/form-data
Request Body:
- modelFile: File (required)
Response:
{
"success": true,
"filePath": "/tmp/uploads/[filename]",
"fileName": "[filename]",
"size": 1024000
}// Process and compress a 3D model
POST /api/process-model
Content-Type: application/json
Request Body:
{
"filePath": "/tmp/uploads/[filename]"
}
Response:
{
"success": true,
"lodFiles": {
"high": "/tmp/processed/[filename]-high.glb",
"medium": "/tmp/processed/[filename]-medium.glb",
"low": "/tmp/processed/[filename]-low.glb"
}
}// Store processed files on Arweave
POST /api/store
Content-Type: application/json
Request Body:
{
"lodFiles": {
"high": "/tmp/processed/[filename]-high.glb",
"medium": "/tmp/processed/[filename]-medium.glb",
"low": "/tmp/processed/[filename]-low.glb"
}
}
Response:
{
"success": true,
"arweaveIDs": {
"high": "ar_[transaction-id-high]",
"medium": "ar_[transaction-id-medium]",
"low": "ar_[transaction-id-low]"
}
}// Mint a compressed NFT on Solana
POST /api/mint
Content-Type: application/json
Request Body:
{
"nftMetadata": {
"name": "3D Model Name",
"description": "Detailed description",
"attributes": "Category:Sculpture
Style:Abstract"
},
"arweaveIDs": {
"high": "ar_[transaction-id-high]",
"medium": "ar_[transaction-id-medium]",
"low": "ar_[transaction-id-low]"
}
}
Response:
{
"success": true,
"signature": "[solana-transaction-signature]",
"metadata": {
"name": "3D Model Name",
"description": "Detailed description",
"attributes": [
{ "trait_type": "Category", "value": "Sculpture" },
{ "trait_type": "Style", "value": "Abstract" }
],
"lodLinks": {
"high": "ar_[transaction-id-high]",
"medium": "ar_[transaction-id-medium]",
"low": "ar_[transaction-id-low]"
}
}
}Common questions about the cNFT-3D Platform
The platform supports GLB, GLTF, OBJ, FBX, and STL formats. We recommend GLB or GLTF for best results as they include materials and textures in a single file.
Minting a compressed NFT on Solana costs significantly less than traditional NFTs. You'll only pay a small transaction fee (typically less than 0.01 SOL) plus a platform fee of 2.5% when your NFT is sold.
Once minted, the 3D model itself cannot be changed as it's permanently stored on Arweave. However, you can update certain metadata fields through our platform if you're the verified creator.
You can set royalties between 0-10% when minting your NFT. These royalties will be automatically paid to your wallet address when your NFT is sold on compatible marketplaces.
Your 3D models are stored permanently on Arweave, a decentralized storage network. This ensures your NFTs remain accessible even if our platform were to shut down in the future.
Yes! Once minted, your compressed NFTs can be listed and sold on any marketplace that supports Solana compressed NFTs, including Magic Eden, Tensor, and others.
Most major Solana wallets support compressed NFTs, including Phantom, Solflare, and Backpack. We recommend using Phantom for the best experience with our platform.
Your 3D NFTs can be viewed directly in our gallery, in compatible wallets, and on marketplaces that support 3D model rendering. We provide multiple LOD variants to ensure smooth viewing across different devices.
Helpful links and resources for creating and working with 3D NFTs