3D Generation

Generate 3D assets from text and images using Google DeepMind's Genie 3

Overview

Wazza Engine provides access to Google DeepMind's Genie 3 for 3D asset generation:

Google DeepMind - Genie 3

State-of-the-art 3D generation model that creates high-quality 3D meshes from text descriptions or images.

Capabilities
  • • Text-to-3D generation
  • • Image-to-3D generation
  • • High-polygon meshes
  • • PBR materials
Output Formats
  • • GLB (recommended)
  • • OBJ with textures
  • • FBX
  • • USD/USDZ

Pricing: 15-30 credits per generation (varies by complexity)

Text-to-3D Generation

Generate 3D models from text descriptions:

Basic Example

import WazzaEngine from '@wazza/engine';

const wazza = new WazzaEngine({
  apiKey: process.env.WAZZA_API_KEY
});

// Generate 3D model from text
const response = await wazza.generate({
  provider: 'google-deepmind',
  model: 'genie-3',
  prompt: 'A wooden treasure chest with metal hinges and lock',
  parameters: {
    polyCount: 'medium', // Options: low, medium, high
    format: 'glb',
    generateTextures: true
  }
});

console.log('Job ID:', response.jobId);

// Wait for completion (3D generation takes 5-15 minutes)
const result = await wazza.waitForCompletion(response.jobId);
console.log('3D Model URL:', result.output.url);
console.log('Preview Image:', result.output.preview);

Detailed Prompt Example

// Generate with detailed specifications
const response = await wazza.generate({
  provider: 'google-deepmind',
  model: 'genie-3',
  prompt: `A low-poly stylized tree with autumn foliage.
  Round canopy with orange and red leaves.
  Brown trunk with simple bark texture.
  Suitable for game environments.`,
  parameters: {
    polyCount: 'low', // Optimized for games
    style: 'stylized',
    format: 'glb',
    generateTextures: true,
    textureResolution: 1024
  }
});

Image-to-3D Generation

Convert 2D images into 3D models:

// Generate 3D model from an image
const response = await wazza.generate({
  provider: 'google-deepmind',
  model: 'genie-3',
  prompt: 'Convert this object to a 3D model',
  parameters: {
    image: 'https://example.com/product-photo.jpg',
    polyCount: 'high',
    format: 'glb',
    generateTextures: true,
    preserveDetails: true
  }
});

// Image-to-3D works best with:
// - Clear, well-lit product photos
// - Objects photographed from multiple angles
// - Simple backgrounds (or use background removal first)
// - High-resolution images (1024x1024 or higher)

Advanced Options

Polygon Count Control

// Low poly (5k-20k polygons) - Game assets, mobile
const lowPoly = await wazza.generate({
  provider: 'google-deepmind',
  model: 'genie-3',
  prompt: 'Stylized fantasy sword',
  parameters: {
    polyCount: 'low',
    style: 'stylized'
  }
});

// Medium poly (20k-100k polygons) - Desktop games, visualization
const mediumPoly = await wazza.generate({
  provider: 'google-deepmind',
  model: 'genie-3',
  prompt: 'Realistic medieval helmet',
  parameters: {
    polyCount: 'medium'
  }
});

// High poly (100k-500k+ polygons) - Cinematic, high-detail renders
const highPoly = await wazza.generate({
  provider: 'google-deepmind',
  model: 'genie-3',
  prompt: 'Highly detailed dragon sculpture',
  parameters: {
    polyCount: 'high',
    subdivisionLevel: 3
  }
});

PBR Materials

// Generate with physically-based rendering materials
const response = await wazza.generate({
  provider: 'google-deepmind',
  model: 'genie-3',
  prompt: 'Polished gold crown with embedded rubies',
  parameters: {
    generateTextures: true,
    pbrMaterials: true, // Enables PBR material generation
    textureResolution: 2048,
    includeMaps: [
      'albedo',       // Base color
      'normal',       // Surface details
      'metallic',     // Metallic surfaces
      'roughness',    // Surface roughness
      'ao'            // Ambient occlusion
    ]
  }
});

Common Use Cases

Game Development

Generate game assets, props, and environment objects

polyCount: 'low' or 'medium'

Product Visualization

Convert product photos into interactive 3D models

image-to-3d, polyCount: 'high'

AR/VR Content

Create 3D objects for augmented reality experiences

format: 'usdz', polyCount: 'medium'

3D Printing

Generate printable 3D models with proper geometry

format: 'obj', manifold: true

Best Practices

1. Prompt Engineering

  • Be specific about shape, size, and proportions
  • Mention material properties (wood, metal, fabric, etc.)
  • Include style keywords: realistic, stylized, low-poly, cartoon
  • Specify intended use: game asset, product render, sculpture

2. Optimization for Different Platforms

  • Mobile/Web: Use low poly (5k-20k), compressed textures (512-1024px)
  • Desktop Games: Use medium poly (20k-100k), 2K textures
  • High-end Rendering: Use high poly (100k+), 4K textures

3. Image-to-3D Tips

  • Use high-resolution images (minimum 1024x1024)
  • Ensure good lighting with minimal shadows
  • Remove or blur backgrounds for better results
  • Multiple reference images improve accuracy

4. Performance Considerations

  • Generation time: 5-15 minutes depending on complexity
  • Use webhooks for async processing in production
  • Download and cache models to reduce API calls
  • Consider batch processing for multiple assets